Python筆記1 基本內容:字元串、數字、判斷、循環
來自專欄 就是愛學習
1.文章內容:
筆記2 內容:數據容器:列表、元組、集合、字典
筆記3 內容:代碼容器:函數、對象、模塊
筆記4 內容:數據結構、文件輸入和輸出
2.使用書籍、教程:《父與子的變成之旅》、《菜鳥教程》Python3 教程 | 菜鳥教程,此文為學習筆記直接引用部分不另做標註;
3.本文完整網路圖請戳:Python學習網路圖
1.1 變數
什麼是變數
相當於是一個名字,在Python中並不是把值存在變數中而更像是把名字放在值上。
我們建立三個變數First、Second和Third並分別給它們賦值為5、3和8,這就像給5、3、8三個數值加上了三個標籤,之後可以直接通過標籤使用對應的值,也可以把標籤從值上取下來再掛到其他值上。
並且同一個東西可以有多個標籤
#定義一個變數MyTeacherMyTeacher="Mrs.Goodyear" #給變數賦值為"Mrs.Goodyear"YourTeacher=MyTeacher #再定義一個變數YourTeacher,讓兩個變數相等print(MyTeacher)print(YourTeacher)
輸出結果
"Mrs.Goodyear""Mrs.Goodyear"
變數命名規則
- 可以由字母、數字、下劃線組成;
- 區分大小寫;
- 必須以字母或下劃線開頭,不能以數字開頭;
- 不能有空格;
1.2 操作符
會對兩邊的東西有影響或「操作」的符號
基本操作符:
=:賦值操作符
+:加或連接操作符
*:乘或重複操作符
Python3 字元串 | 菜鳥教程
使用引號(』』或「」)來創建
teacher="Mr.Morton"
2.1 字元串的規則
- 單引號和雙引號(』』或「」)在創建的字元串時完全相同;
- 三引號(『『『 』』』或「「「 」」」)可創建多行字元串,也可作為注釋使用;
- 字元串不可改變。
2.2 字元串的運算
拼接:用+號實現
print("cat"+"dog")
輸出結果
Catdog
重複:用*號實現
print("Holle "*6)
輸出結果
Holle Holle Holle Holle Holle Holle
2.3 字元串的索引
用索引訪問字元串中單個元素,相當於複製了這個元素
var1="Holle world"nvar1= var1[0] #用索引0訪問字元串第1個元素print (nvar1)
輸出結果
H
用索引訪問字元串中的一部分,相當於創建一個原字元串的部分副本
var2="abcdefg" #定義變數賦值為字元串nvar2=var2[1:5] #用索引1:5,訪問字元串第2到5個元素print (nvar2)
輸出結果
bcde
2.4 轉義符
需要使用特殊字元時用『』來轉義符;
常見轉義符有:』表示單引號;」表示雙引號;\表示反斜杠;
表示換行;
表示回車等
print(asd
fgh)
輸出結果
asdfgh
2.5 自然字元串
在字元串第一個引號前加R或r,字元串內容將按字面意思列印,有轉義符也不會發生轉義
print(rasd
fgh)n
輸出結果
asdnfgh
2.6 從其他類型轉化為字元串
使用函數str()從一個數字(或其他任何類型)創建一個新的字元串;
數字加上引號就變為字元串
c=38.99d=str(c) #將浮點數轉化為整數c,d
輸出結果
(38.99, 38.99)
Python3 數字(Number) | 菜鳥教程
3.1 操作符
+、-、*、/、=等都是操作符,他們會處理(賦值、檢查或改變)符號兩邊的東西,所操作的東西叫操作數:
加+;減-;乘*;除/,與數學中四則運算相同,不做贅述
=等號為賦值操作
指數
用雙星號**表示直指數,3**5=
print(3**5)
輸出結果
234
取余
用%來計算整數相除的餘數
print(7%2)
輸出結果
1
整除
用//來進行整除運算,整除運算的結果為向下取整,即僅有整數部分,小數部分不進行四捨五入,而是直接捨去
print(7//2)
輸出結果
3
自增和自減
用+=表示自增1,用-=表示自減1
number=7number+=1print("自增結果: ",number)number-=1print("自減結果: ",number)
輸出結果
自增結果: 8自減結果: 7
E 記法
對於極大和極小的數字Python用E記法顯示;
3.8E16等同於 ;
1.752E-13等同於
3.2 運算順序
和數學運算順序一致,指數最優先再乘除後加減,改變運算順序就用括弧()
3.3 數值類型
整數(int)沒有小數點;
將浮點數轉化為整數:使用int(),從一個字元串或浮點數創建一個新的整數,int()總是向下取整,實際上就是直接去掉小數部分
c=38.99d=int(c) #將浮點數轉化為整數c,d
輸出結果
(38.99, 38)
浮點數(float)包含整數位小數點小數位;
將字元串或整數轉化為浮點數:使用float(),從一個字元串或整數創建一個新的浮點數
a=24b=76.3c=float(a)d=float(b)a,c,b,d #不用print()可以直接顯示變數的值
輸出結果
(24, 24.0, 76.3, 76.3)
這裡只介紹了字元串轉化為浮點數而沒有介紹字元串轉化為整數,是因為int()在使用中非常容易報錯,例如字元串76.3用int()轉化就會報錯字元串76則不會報錯。
複數(complex)包含實部和虛部。
3.4 type():可以知道變數的類型
a=44.2b=44.3c=44type(a),type(b),type(b)
輸出結果
(str, float, int)
Python3 條件控制 | 菜鳥教程
4.1 測試
決策時,程序要做出測試,查看某個條件是否為真。而每個測試只有兩個可能的答案:真(True)或者假(False)
使用 if 關鍵字來測試條件
if timsAnswer==correctAnswer: #if行末尾有冒號 print("You got it right!") #冒號告訴程序接下來將是一個代碼塊 score=score+1 #代碼塊整體縮進4個空格 print("Tanks for playing") #條件為真時執行代碼塊
4.2 比較操作符
條件測試語句相當於一個疑問句,a是否等於b?a是否大於b?這種疑問句用比較操作符(條件測試操作符)表示
比較操作符有:
==等於,>大於,<小於,!=不等於,>=大於等於,<=小於等於
num1=float(input("Enter the first number:")) #將輸入的數值轉化為浮點數num2=float(input("Enter the second number:"))if num1<num2: print(num1,"is less than ",num2)if num1>num2: print(num1,"is greater than ",num2)if num1==num2: print(num1,"is equal to ",num2)if num1!=num2: print(num1,"is not equal to",num2)
輸出結果
Enter the first number:9Enter the second number:59.0 is greater than 5.09.0 is not equal to 5.0
4.3 測試為假時會怎麼樣
測試為真時會執行接下來的代碼塊,測試為假時有3種可能:
做另一個測試,使用關鍵字 elif (else if 的簡寫)讓程序再執行另一個測試,if 後面 elif 想要多少就可以有多少
answer=flaot(input("Enter the number from 1 to 15:"))if answer>=10: print("You got at least 10!")elif answer>=5: print("You got at least 5!")elif answer>=3: print("You got at least 3!")
輸出結果
Enter the number:5You got at least 5!
做其他工作,使用關鍵字 else ,else總是出現在 if 和所有 elif 之後,即所有測試都為假時將要執行的工作
answer=flaot(input("Enter the number from 1 to 15:"))if answer>=10: print("You got at least 10!")elif answer>=5: print("You got at least 5!")elif answer>=3: print("You got at least 3!")else: print("You got less than 3.")
輸出結果
Enter the number:2You got less than 3.
繼續,if 塊後沒有放任何東西程序會執行下一個行代碼(如果有)或者結束(如果沒有更多代碼)
4.4 測試多個條件
使用嵌套判斷
測試遊戲玩家年齡和年級必須年滿8歲且三年級以上才能玩
age=float(input("Enter your age:"))grade=int(input("Enter your grade:"))if age>=8: if grade>=3: #年級測試語句嵌套在年級測試語句中 print("You can play this game.")else : print("Sorry ,you cant play the game.")
輸出結果
Enter your age:18Enter your grade:3You can play this game.
使用and ,同時滿足幾個條件時為真
同樣使用上面的例子
age=float(input("Enter your age:"))grade=int(input("Enter your grade:"))if age>=8 and grade>=3: #使用and比嵌套更加簡潔 print("You can play the game.")else: print("You cant play the game.")
輸出結果
Enter your age:18Enter your grade:3You can play this game.
使用 or ,只要滿足任意條件就為真
#喜歡的顏色為紅、藍、綠中之一的人才能玩的遊戲color=input("Enter your favorite color:")if color=="rad" or color=="blue" or color=="green": print("You are a llowed to play this game.")else: print("Sorry,you cant paly the game.")
輸出結果
Enter your favorite color:yellowSorry,you cant paly the game.
使用not,把比較反過來表示反向邏輯
if not (age<8):
與下面的代碼:
if age >=8:
含義相同
Python3 循環語句 | 菜鳥教程
循環就是讓計算機做重複的事
循環主要有兩種類型:
- 重複一定次數的循環:稱為計數循環即for循環
- 重複直至發生某種情況時結束,稱為條件循環即while循環
5.1 for循環
5.1.1 循環的執行
for循環會執行一定的次數
for i in [1,2,3,4,5]: print(i)
輸出結果
12345
循環如何執行
- 變數 i 的值從1開始所以第一次執行print語句列印的變數值為1;
- 對應列表中的每一個值,這個循環會把接下來的指令塊中的工作完成一次;
- 每次執行循環時,變數 i 會賦為列表中的下一個值。
循環變數名
可以隨意取,但約定俗成使用i、j、k
5.1.2 range()函數的功能
給循環變數賦值的列表可以使用range()函數來代替,只需輸入起始值和結束值,它就會創建一個可迭代的東西,你可以使用循環來遍歷它,其工作方式與使用列表相同,
range()會在結束值之前停止,所以循環變數不會被賦予結束值
for i in range(1,5): print(i,"times 8 =",i*8)
輸出結果
1 times 8 = 82 times 8 = 163 times 8 = 244 times 8 = 32
5.1.3 range()函數的參數
共有三個參數(起始值=0,結束值,步長=1)
只有一個參數時:傳遞的是結束值,起始值使用默認值0 ,步長使用默認值1
for i in range(5): print(i)
輸出結果
12345
第三個參數:步長
for i in range(1,10,2): print(i)
輸出結果
13579
如果步長為複數則表示反向計數
for i in range(10,1,-1): print(i)
輸出結果
1098765432
5.2 while循環
條件循環用一個測試來確定什麼時候停止循環,會在滿足某個條件時一直保持循環
print("type 3 to continue,anything else to quit.")someInput=input()while someInput==3: print("Thank you for the 3,Very kind of you.") print("Type 3 to continue,anything else to quit.") someInput=input()print("Thats not 3,so Im quitting now.")
輸出結果
type 3 to continue,anything else to quit.3Thank you for the 3,Very kind of you.Type 3 to continue,anything else to quit.6Thats not 3,so Im quitting now.
5.3 跳出循環
5.3.1 continue 跳出當前迭代,提前進入下次迭代,在for循環和while循環中使用方法相同
for i in range(1,6): print() print(i =,i,end="") print(" Holle ,how ",end="") if i==3: continue print("are you today?")
輸出結果
i = 1 Holle ,how are you today?i = 2 Holle ,how are you today?i = 3 Holle ,how i = 4 Holle ,how are you today?i = 5 Holle ,how are you today?
5.3.2 break 終止循環,直接跳出循環不再計數或放棄等待結束條件
for i in range(1,6): print() print(i =,i,end="") print(" Holle ,how ",end="") if i==3: break print("are you today?")
輸出結果
i = 1 Holle ,how are you today?i = 2 Holle ,how are you today?i = 3 Holle ,how
—完—
筆記2 內容:數據容器:列表、元組、集合、字典
筆記3 內容:代碼容器:函數、對象、模塊
筆記4 內容:數據結構、文件輸入和輸出
推薦閱讀:
※【食品藥品行業】配方調整以後,用等價檢驗比較混合特性是否相同?
※數據分析師入門
※如何運用數據精細化運營
※胖胖狗的2017年上半年數據分析學習計劃
※MySQL基礎練習2