3DM速報:《地平線5》等數十作將XGP首發 魂系最終幻想公佈
阿新 • • 發佈:2021-06-15
變數 = 值
變數名自定義,要滿足識別符號命名規則。
2.1 識別符號
識別符號命名規則是Python中定義各種名字的時候的同意規範,具體如下:
-
由數字、字母、下劃線組成
-
不能數字開頭
-
不能使用內建關鍵字
-
嚴格區分大小寫
False None True and as assert break class continue def del elif else except finally for from global if import in is lambda nonlocal not or pass raise return try while with yield
資料型別
數值:int float 布林型:True False str(字串) list(列表):[10,20,30] tuple(元組): (10,20,30) set(集合): {10,20,30 } dict(字典也是鍵值對): {'name':'TOM','age':18}
格式化輸出
格式符號 | 轉換 |
---|---|
%s | 字串 |
%d | 有符號的十進位制整數 |
%f | 浮點數 |
%c | 字元 |
%u | 無符號十進位制整數 |
%o | 八進位制整數 |
%x | 十六進位制整數 |
%X | 十六進位制整數 |
%e | 科學記數法 |
%E | 科學記數法 |
%g | %f和%e的簡寫 |
%G | %f和%E的簡寫 |
技巧
-
%06d,表示輸出的整數顯示位數,不足以0補全,超出當前位數則原樣輸出
-
%.2f,表示小數點後顯示的小數位數。
ex:
name = "秀芬兒"
print("你好啊%name" % name)
資料型別的轉換
input()接受使用者輸入的資料都是字串型別
想要得到其它型別,需要轉換
資料型別轉換函式
函式 | 說明 |
---|---|
int(x[,base]) | 將x轉換為一個整數 |
float(x) | 將x轉換為一個浮點數 |
complex(real[,imag]) | 建立一個複數,real為實部,imag為虛部 |
str(x) | 將物件x轉換為字串 |
repr(x) | 將物件x轉換為表示式字串 |
eval(str) | 用來計算在字串中的有效Python表示式,並返回一個物件 |
tuple(s) | 將序列s轉換為一個元組 |
list(s) | 將序列s轉換為一個列表 |
chr(x) | 將一個整數轉換為一個Unicode字元 |
ord(x) | 將一個字元轉換為它的ASCII整數值 |
hex(x) | 將一個整數轉換為一個十六進位制字串 |
運算子的分類
-
算術運算子
-
賦值運算子
-
複合賦值運算子
-
比較運算子
-
邏輯運算子
1.算術運算子
運算子 | 描述 | 例項 |
---|---|---|
+ | 加 | 1+1 輸出結果為2 |
- | 減 | 1-1 輸出結果為0 |
* | 乘 | 2*2 輸出結果為4 |
/ | 除 | 10/2 輸出結果為5 |
// | 整除 | 9//4 輸出結果為2 |
% | 取餘 | 9%4 輸出結果為1 |
** | 指數 | 2**4 輸出結果為16,即2 * 2 * 2 * 2 |
() | 小括號 | 小括號用來提高運算子優先順序,即(1+2)*3輸出結果為9 |
注意:
-
混合運算優先順序順序:()高於**高於 * / // % 高於 + -
2.賦值運算子
-
多個變數賦值
num1,float1,str1 = 10,0.5,'hello world'
print(num1)
print(float1)
print(str1)
3.符合賦值運算子
運算子 | 描述 | 例項 |
---|---|---|
+= | 加法賦值運算子 | c+=a等價於c=c+a |
-= | 減法賦值運算子 | c-=a等價於c=c-a |
*= | 乘法賦值運算子 | c*=a 等價於 c=c * a |
/= | 除法賦值運算子 | c/=a等價於c=c/a |
//= | 整除賦值運算子 | c//=a等價於c=c//a |
%= | 取餘賦值運算子 | c*=a等價於c=c%a |
**= | 冪賦值運算子 | c ** = a 等價於 c=c ** a |
5.邏輯運算子
運算子 | 邏輯表示式 | 描述 | 例項 |
---|---|---|---|
and | x and y | 布林“與”:如果x為False,x and y 返回False,否則它返回y的值。 | True and False,返回False。 |
or | x or y | 布林”或“:如果x是True,它返回True,否則它返回y的值。 | False or True,返回True。 |
not | not x | 布林“非”:如果x為True,返回False。如果x為False,它返回True。 | not True 返回 False,not False 返回 True |
數字之間的邏輯運算
and運算子,只要有一個值為0,則結果為0,否則結果為最後一個非0數字
or運算子,只有所有值為0結果才為0,否則結果為第一個非0數字
條件語句
if語句
if 條件:
條件成立執行程式碼1
條件成立執行程式碼2
……
if...else...語句
if 條件:
條件成立執行的程式碼1
條件成立執行的程式碼2
……
else:
條件不成立執行的程式碼1
條件不成立執行的程式碼2
……
多重判斷
if 條件1:
條件成立執行的程式碼1
條件成立執行的程式碼2
……
elif 條件2:
條件不成立執行的程式碼1
條件不成立執行的程式碼2
……
……
else:
以上條件都不成立執行程式碼
if巢狀
if 條件1:
條件成立執行的程式碼1
條件成立執行的程式碼2
……
if 條件2:
條件不成立執行的程式碼1
條件不成立執行的程式碼2
……
三目運算子
三目運算子也叫三元運算子或三元表示式。
語法
條件成立執行的表示式 if 條件 else 條件不成立執行的表示式
ex:
a = 1
b = 2
c = a if a > b else b
print(c)
迴圈
-
while
-
break 和 continue
-
while迴圈巢狀
-
for迴圈
while的語法
while 條件:
條件成立重複執行的程式碼1
條件成立重複執行的程式碼2
……
ex:
a = 1
while a < 100:
a += 1
print(a)
break 和 continue
for迴圈
語法
for 臨時變數 in 序列:
重複執行的程式碼1
重複執行的程式碼2
……
str1 = 'ddd sss'
for i in str1:
print(i)
while...else
語法
while 條件:
條件成立重複執行的程式碼
else:
迴圈正常結束之後要執行的程式碼
語法
for 臨時變數 in 序列:
重複執行的程式碼
……
else:
迴圈正常結束之後要執行的程式碼
下標
字串可以使用下標操作
name = 'abcdef'
print(name[1])
print(name[0])
print(name[2])
切片
切片是指對操作的物件擷取其中一部分的操作。字串、列表、元組都支援切片操作。
語法
序列[開始位置下標:結束位置下標:步長]
序列[開始位置下標:結束位置下標] # 預設位置為1,到結束下標減一結束
序列[:結束位置下標] # 預設從0開始,到結束下標減一結束
序列[開始位置下標:] # 從開始下標開始,選取到最後
序列[:] # 選取全部
負數測試:
str1 = '012345678'
str1[::-1] # 876543210` -- 如果步長為負數,表示倒敘選取
str1[-4:-1] # 567 -- 下標-1表示最後一個數據,依次向前類推
終極測試:
str1[-4:-1:1] # 567
str1[-4:-1:-1] # 不能選取出資料:從-4開始到-1結束,選取方向為從左到右,但是
#-1步長:從右向左選取。
#如果選取方向(下標開始到結束的方向)和步長方向衝突,則無法選取資料
#改進
str1[-1:-4:-1] #
注意
-
不包含結束位置下標對應的資料,正負整數均可;
-
步長是選取間隔,正負整數均可,預設步長為1
str1 = '012345678'
print(str1[2:5:1]) # 234
print(str1[2:5:2]) # 24