Day1: Python 第一天學習記錄

来源:https://www.cnblogs.com/kongxianghui/archive/2018/01/06/8184752.html
-Advertisement-
Play Games

一、Python簡介 1、Python創始人 Guido van Rassum, 於1989年,創立。 2、Python的主要應用領域 雲計算:openstack web 開發: 科學運算 AI 金融:量化交易、金融分析等 圖形GUI 語言的類型: 3、編程語言的類型 解釋型語言:容易移植 編譯型語 ...


一、Python簡介

1、Python創始人 Guido van Rassum, 於1989年,創立。

2、Python的主要應用領域

  • 雲計算:openstack
  • web 開發:
  • 科學運算
  • AI
  • 金融:量化交易、金融分析等
  • 圖形GUI
  • 語言的類型:

3、編程語言的類型

  • 解釋型語言:容易移植
  • 編譯型語言:性能好,如C++
  • 動態語言:運行期間才去做數據類型檢查,如Python,Ruby等
  • 靜態語言:數據類型是在編譯期間檢查的。如C/C++,JAVA,C#
  • 強類型定義語言:強制數據類型定義的語言。是類型安全的語言。如Python,JAVA
  • 弱類型定義語言:數據類型可以忽略的語言。如vbscript,shell 腳本

4、Python的優缺點:

優點:

  • 簡單優雅明確
  • 開發效率高:大量第三方庫,避免重覆造輪子
  • 高級語言:不需要考慮記憶體管理
  • 可移植性:不調用操作系統本身的庫,則可以無需修改
  • 可擴展:不需要公開的部分可以用C/C++
  • 可嵌入:嵌入其他程式

缺點:

  • 速度慢:大多數情況下用戶是無法感知的。
  • 代碼不能加密
  • 線程不能利用多CPU的問題:不能利用多核優勢的。

二、Python發展史

  • 1989年誕生,1991年第一個python編譯器誕生;1999年出現來第一個pythonweb框架
  • 2010年,Python2.7是目前最廣泛使用的版本,官方支持到2020年
  • Twisted是一個強大的非同步網路框架,目前部分不支持Python3.0
  • IDE用Pycharm:開發效率高,自動補全

三、變數、字元編碼

1、變數:用於保存信息以便後續使用,如:name=“Cat”,是一個字元串,輸出結果:print(“His name is :” ,name)

  • 變數名只能是字母、數字或下劃線的任意組合;第一個字元不能是數字;一些特定單詞不能是變數名
  • 儘量用英文單詞,用下劃線分割,或者用首字母寫分割如: FlyBirdInSky,駝峰型

2、字元編碼

ASCII碼無法將世界上的各種文字和符號全部表示,統一為Unicode,統一占用2個位元組。又制定來UTF-8,是unicode的子集,可變長度。

註釋: 單行用#,多行用‘’‘ ’‘’ 或3個雙引號

四、用戶輸入和格式化輸出

1、輸入

username=input('username:')

password=input('password:')

 print(username,password)

2、格式化輸出的三種方法:

# 格式化輸出的3種方法

info1='''
--------info of %s-------
name=%s
age=%d
address=%s
salary=%s
'''%(name,name,age,address,salary)

print(info1)

info2='''
======info of {0} =====
name={0}
age={1}
address={2}
salary={3}
'''.format(name,age,address,salary)
print (info2)

info3='''
********information of {_name}************
name={_name}
age={_age}
address={_address}
salary={_salary}

'''.format(_name=name,
_age=age,
_address=address,
_salary=salary)

print(info3)
------------------
導入第三方庫 import
例子:
import getpass
username=input("username:")
passwd=getpass.getpass("password:") #密碼密文
print(username,passwd)
五、判斷和迴圈

條件判斷 if--else:

username =input("username:")
password=input("password:")
_username="kong"
_password="123123"
if _username==username and password==password :
print("welcome user {name} login.....".format(name=username))
else:
print ("invalid username or password")

複雜條件判斷:if====elif----else:

age_of_cat=9
_age_of_cat=int(input("guess age:"))
if _age_of_cat==age_of_cat:
print("yes,you got it!")
elif _age_of_cat>age_of_cat:
print("think smaller !")
else:
print("think bigger !")
while 迴圈/break退出當前迴圈:
count=0
age_of_cat=9
while count<3:
_age_of_cat=int(input("guess age:"))
if _age_of_cat==age_of_cat:
print("yes,you got it!")
break
elif _age_of_cat>age_of_cat:
print("think smaller !")
else:
print("think bigger !")
count+=1
  if count==3:
  confirm_continue=input("do you want to contine?")
  if confirm_continue!='n':
count=0
else:
  print("you have tried too many times!")
for 迴圈以及迴圈嵌套:
for i in range(10):
if i <3:
print("loop:",i)
else:
continue
print("welcome again!!")
-------
for a in range(10):
print("=========",a)
for b in range(10):
print(b)
==========第一節學習記錄 ending============





 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • package cn.itcast.bos.utils; import java.util.Arrays; import net.sourceforge.pinyin4j.PinyinHelper; import net.sourceforge.pinyin4j.format.HanyuPinyin ...
  • 1.install一個npm包的時候,總是會報這個警告; 網上查資料知道,這個fsevents是mac下用的,windows忽略即可; 2.關於在main.js中引入less文件的問題, 就會報這個錯,說相關模塊沒有找到,這個問題,我在網上找了很多資料,然後我也都試了,都不好用,於是我的解決辦法就是 ...
  • 現效果如下: 由於我這邊不需要其他按鈕,就沒寫 數據是由後臺提供,在這做了個小列子 後臺代碼 頁面代碼 Js ...
  • 期末,要交一個大作業,正巧之前跑國圖借書的時候,暈頭轉向的,國圖內居然沒有導航!!!借這個機會做一個室內導航的demo,只是半成品,還需要加入室內定位,匹配一下坐標才能在實際中使用。 demo:利用蜂鳥雲平臺進行二次開發實現。愛琴海商城內部尋徑。 主要功能: 代碼!不給~ 上圖!! 初始界面 查找終 ...
  • 定義求最大最小值的函數 輸入為: ...
  • 上面這段代碼一直在用,面試的時候也經常被問到,卻從未深究過,不知道線程池到底是怎麼回事,今天看看源代碼,一探其究竟 線程池主要控制的狀態是ctl,它是一個原子的整數,其包含兩個概念欄位: workerCount:有效的線程數量 runState:線程池的狀態 為了在一個整型值裡面包含這兩個欄位,我們 ...
  • 最近總是接觸時間處理問題,花了點時間整理以前使用過的方法,修改整合,記錄下來方便以後使用。 package cc.vvxtoys.util; import java.text.ParseException; import java.text.SimpleDateFormat; import java ...
  • 一、異常處理 Spring提供了多種方式將異常轉換為響應: 特定的Spring異常將會自動映射為指定的HTTP狀態碼 在預設情況下,Spring會將自身的一些異常自動轉換為合適的狀態碼,從而反饋給客戶端。實際上,如果沒有出現任何映射的異常,響應都會帶有500狀態碼。映射表如下: 自定義異常上可以添加 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...