Python基礎(chǔ)必備之語法結(jié)構(gòu)詳解
Python 語句
語句是 Python 解釋器解析和處理的基本指令單元。通常解釋器按順序一個接一個的執(zhí)行語句。
在 REPL 會話中,語句在輸入時執(zhí)行,直到解釋器終止。當(dāng)執(zhí)行腳本文件時,解釋器從文件中讀取語句并執(zhí)行直到遇到文件結(jié)尾。
通常每個語句占用一行,語句的結(jié)尾由標(biāo)記行尾的換行符分隔。
print('真?三國無雙') 真?三國無雙 x = ['劉備', '関羽','張飛'] print(x[1:2]) ['関羽']
續(xù)行
假設(shè) Python 代碼中的單個語句特別長(包含多個賦值語句)。
person1_age = 42 person2_age = 16 person3_age = 71 someone_is_of_working_age = (person1_age >= 18 and person1_age <= 65) or (person2_age >= 18 and person2_age <= 65) or (person3_age >= 18 and person3_age <= 65) someone_is_of_working_age True
一個冗長的嵌套列表最好有自己的格式化規(guī)范。
list_ = [[1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15], [16, 17, 18, 19, 20], [21, 22, 23, 24, 25]] list_ [[1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15], [16, 17, 18, 19, 20], [21, 22, 23, 24, 25]]
Python 官方的操作指南定義的最大行長應(yīng)為 79 個字符。
隱式續(xù)行的方式
list_ = [ [1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15], [16, 17, 18, 19, 20], [21, 22, 23, 24, 25] ] list_ [[1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15], [16, 17, 18, 19, 20], [21, 22, 23, 24, 25]]
PEP8 明確提倡在適當(dāng)?shù)臅r候使用括號優(yōu)化代碼結(jié)構(gòu)。
someone_is_of_working_age = ( ? ? (person1_age >= 18 and person1_age <= 65) ? ? or (person2_age >= 18 and person2_age <= 65) ? ? or (person3_age >= 18 and person3_age <= 65) ) someone_is_of_working_age True
顯式續(xù)行的方式
使用反斜杠 ( \ ) 字符作為該行的最后一個字符。
str_ = \ '真?三國無雙' str_ '真?三國無雙' str_ = '劉備'+'関羽'\ + '張飛' str_ '劉備関羽張飛'
每行多語句
如果多個語句用分號 ( ; ) 字符分隔。
x = '劉備'; y = '関羽'; z = '張飛' print(x); print(y); print(z) 劉備 関羽 張飛 x, y, z = '劉備','関羽','張飛' print(x, y, z, sep='\n') 劉備 関羽 張飛
注釋
哈希字符 ( # ) 表示注釋,解釋器將忽略從哈希字符到該行末尾的所有內(nèi)容。
list_ = ['劉備', '関羽', '張飛'] # 這是個注釋 list_ ['劉備', '関羽', '張飛']
如果該行的第一個非空白字符是( # ) ,則整行將被忽略。
# 這是個注釋 # 這是個注釋
字符串文字中的哈希字符受到保護(hù),并且不表示注釋。
str_ = '劉備 関羽 # 張飛' str_ '劉備 関羽 # 張飛'
其他的一些注釋方法
# 隱式續(xù)行 list_ = [ '劉備', '関羽', # 注釋 '張飛', # 注釋 ] list_ ['劉備', '関羽', '張飛'] # 這里是個注釋1 # # 這里是個注釋2 # 這里是個注釋3 """這里是個注釋1 這里是個注釋2 這里是個注釋3 """
空白字符
通常將標(biāo)記彼此分開的是空格,提供空白以提高可讀性的空白字符。
字符 | ASCII碼 | 文字表達(dá) |
---|---|---|
space | 32( 0x20) | ’ ’ |
tab | 9( 0x9) | ‘\t’ |
newline | 10( 0xa) | ‘\n’ |
Python 解釋器通常會忽略空格。
x=1;y=2 x+y 3 (x==3)and(x<y) True list_=['劉備','関羽','張飛'] list_ ['劉備', '関羽', '張飛'] list_={'劉備':1,'関羽':2} list_ {'劉備': 1, '関羽': 2} x,y,z='劉備',14,21.1 (x,y,z) ('劉備', 14, 21.1) str_='劉備'"関羽"'張飛' str_ '劉備関羽張飛' str_ = '関羽' str_ in ['劉備', '関羽', '張飛'] True
空格作為縮進(jìn)
縮進(jìn),在一行上第一個標(biāo)記左側(cè)的空格——具有非常特殊的含義。在大多數(shù)解釋語言中,語句前的前導(dǎo)空格被忽略。
例如 windows 環(huán)境。
C:\Users\Lenovo>hello hello C:\Users\Lenovo> hello hello
但是在python環(huán)境下不可行。
print('真?三國無雙') 真?三國無雙 print('真?三國無雙') File "<stdin>", line 1 print('真?三國無雙') ^ IndentationError: unexpected indent
以上就是Python基礎(chǔ)必備之語法結(jié)構(gòu)詳解的詳細(xì)內(nèi)容,更多關(guān)于Python語法結(jié)構(gòu)的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Django項(xiàng)目中實(shí)現(xiàn)使用qq第三方登錄功能
使用qq登錄的前提是已經(jīng)在qq互聯(lián)官網(wǎng)創(chuàng)建網(wǎng)站應(yīng)用并獲取到QQ互聯(lián)中網(wǎng)站應(yīng)用的APP ID和APP KEY。這篇文章主要介紹了Django項(xiàng)目中實(shí)現(xiàn)使用qq第三方登錄功能,需要的朋友可以參考下2019-08-08使用Keras預(yù)訓(xùn)練模型ResNet50進(jìn)行圖像分類方式
這篇文章主要介紹了使用Keras預(yù)訓(xùn)練模型ResNet50進(jìn)行圖像分類方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05Python利用PyExecJS庫執(zhí)行JS函數(shù)的案例分析
這篇文章主要介紹了Python利用PyExecJS庫執(zhí)行JS函數(shù),本文通過案例分析給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-12-12opencv python Canny邊緣提取實(shí)現(xiàn)過程解析
這篇文章主要介紹了opencv python Canny邊緣提取實(shí)現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-02-02基于python介紹pytorch保存和恢復(fù)參數(shù)
這篇文章主要介紹了基于python介紹pytorch保存和恢復(fù)參數(shù),為了恢復(fù)模型,我們需要用代碼生成框架,然后從磁盤加載參數(shù),下面具體的相關(guān)介紹,需要的小伙伴可以參考一下2022-03-03