python語(yǔ)言基本語(yǔ)句用法總結(jié)
python語(yǔ)句與語(yǔ)法
1.python簡(jiǎn)單語(yǔ)句的基本介紹
>>> while True: #簡(jiǎn)單的while循環(huán)
... reply = input('Enter text:') #調(diào)用了Input,將輸入傳參給reply
... if reply == 'stop': break #如果輸入的是stop就退出循環(huán)
... print(reply.upper()) #如果輸入的不是stop就一直將輸入的轉(zhuǎn)換為大寫(xiě)字母
...
Enter text:abc #這是第一個(gè)輸入abc,看到下面轉(zhuǎn)換成大寫(xiě)的ABC了
ABC
Enter text:nihao123da
NIHAO123DA
Enter text:stop #這里輸入了一個(gè)stop,然后循環(huán)就退出了
>>>
上面的代碼利用了Python的while循環(huán),它是Python最通用的循環(huán)語(yǔ)句。簡(jiǎn)單的說(shuō),它的組成為:while這個(gè)單詞,之后跟一個(gè)其結(jié)果為真或假的表達(dá)式,再接一個(gè)當(dāng)頂端測(cè)試為真(這時(shí)的True看做是永遠(yuǎn)為真)時(shí)不停的迭代的嵌套代碼塊。
這個(gè)Input內(nèi)置函數(shù),在這里用于通過(guò)控制臺(tái)輸出,它打印可選的參數(shù)字符串作為提示,并返回用戶輸入的回復(fù)字符串。
利用嵌套代碼塊特殊規(guī)則的單行if語(yǔ)句也在這里出現(xiàn):if語(yǔ)句體出現(xiàn)在冒號(hào)之后的首行,而并不是在首行的下一行縮進(jìn)。
最后,Python的break語(yǔ)句用于立即退出循環(huán)。也就是完全跳出循環(huán)語(yǔ)句而程序會(huì)繼續(xù)循環(huán)之后的部分。如果沒(méi)有這個(gè)退出語(yǔ)句,while循環(huán)會(huì)因?yàn)闇y(cè)試總是真值而永遠(yuǎn)循環(huán)下去。
>>> while True:
... reply = input('Enter text:')
... if reply == 'stop': #如果是stop就退出
... break
... elif not reply.isdigit(): #如果輸入的不是數(shù)字類型就打印Bad1 8次
... print('Bad!' * 8)
... else: #否則就打印輸入數(shù)字的2次方
... print(int(reply) ** 2)
... #按回車下面是測(cè)試結(jié)果
Enter text:abc
Bad!Bad!Bad!Bad!Bad!Bad!Bad!Bad!
Enter text:a
Bad!Bad!Bad!Bad!Bad!Bad!Bad!Bad!
Enter text:2
4
Enter text:stop
>>>
Python會(huì)執(zhí)行首次測(cè)試為真所想匹的代碼塊,按照由上至下的順序,如果所有測(cè)試都是假,就執(zhí)行else部分。
2.賦值、表達(dá)式和打印
賦值語(yǔ)句有些特性要專門記住,如下所示
賦值語(yǔ)句建立對(duì)象引用值,Python賦值語(yǔ)句會(huì)把對(duì)象引用值存儲(chǔ)在變量名或數(shù)據(jù)結(jié)構(gòu)的元素內(nèi)。賦值語(yǔ)句總是建立對(duì)象的引用值,而不是賦值對(duì)象。因此,Python變量更像是指針,而不是數(shù)據(jù)存儲(chǔ)區(qū)域。
變量名在首次賦值時(shí)會(huì)被創(chuàng)建。Python會(huì)在首次將(即對(duì)象引用值)賦值給變量時(shí)創(chuàng)建其變量名。有些(并非全部)數(shù)據(jù)結(jié)構(gòu)元素也會(huì)在賦值時(shí)創(chuàng)建(例如,字典中的元素,一些對(duì)象屬性)。一旦賦值了,每當(dāng)這個(gè)變量名出線在表達(dá)式時(shí),就會(huì)被其所引用的值取代。
變量名在引用前必須先賦值。使用尚未進(jìn)行賦值的變量名是一種錯(cuò)誤,如果你視圖這么做,Python會(huì)引發(fā)異常,而不是返回某種模糊的默認(rèn)值;如果返回默認(rèn)值,就很難再程序中找出輸入錯(cuò)誤的地方。
執(zhí)行隱式賦值的一些操作,在Python中,賦值語(yǔ)句會(huì)在許多情況下使用。例如,模塊導(dǎo)入、函數(shù)和類的定義、for循環(huán)變量以及函數(shù)參數(shù)全都是隱式賦值運(yùn)算。
>>> seq = [1,2,3,4] >>> a,b,c,*d = seq >>> print(a,b,c,d) 1 2 3 [4] >>> L = [1,2,3,4] >>> while L: ... front, *L = L ... print(front,L) ... 1 [2, 3, 4] 2 [3, 4] 3 [4] 4 []
當(dāng)使用一個(gè)帶星號(hào)的名稱的時(shí)候,左邊的目標(biāo)中的項(xiàng)數(shù)不需要與主題序列的長(zhǎng)度匹配。實(shí)際上,帶星號(hào)的名稱可以出現(xiàn)在目標(biāo)中的任何地方
打印操作
在python中,print語(yǔ)句可以實(shí)現(xiàn)打印--只是對(duì)程序員友好的標(biāo)準(zhǔn)輸出流的接口而已。從技術(shù)角度來(lái)講,這是把一個(gè)或多個(gè)對(duì)象轉(zhuǎn)換為其文本表達(dá)形式,然后發(fā)送給標(biāo)準(zhǔn)輸出或另一個(gè)類似文件的流。
文件對(duì)象方法:例如file.write(str).打印操作是類似的,但更加專注--文件寫(xiě)入方法是把字符串寫(xiě)入到任意的文件,print默認(rèn)地把對(duì)象打印到stdout流,添加了一些自動(dòng)的格式化。和文件方法不同,在使用打印操作的時(shí)候,不需要把對(duì)象轉(zhuǎn)換為字符串。
標(biāo)準(zhǔn)輸出流:標(biāo)準(zhǔn)輸出流(通常叫做stdout)只是發(fā)送一個(gè)程序的文本輸出的默認(rèn)的地方。加上標(biāo)準(zhǔn)輸入流和錯(cuò)誤流,它只是腳本啟動(dòng)時(shí)所創(chuàng)建的3種數(shù)據(jù)連接中的一種。標(biāo)準(zhǔn)輸出通常映射到啟動(dòng)Python程序的窗口,除非它已經(jīng)在操作系統(tǒng)的shell中重定向到一個(gè)文件或管道。
if測(cè)試和語(yǔ)法規(guī)則
Python語(yǔ)法規(guī)則
Python語(yǔ)法有些特性是我們需要知道的: 語(yǔ)句是逐個(gè)運(yùn)行的:python一般都會(huì)按照次序從頭到尾執(zhí)行文件中嵌套塊中的語(yǔ)句,但是像if(還有循環(huán))這種語(yǔ)句會(huì)使得解釋器在程序內(nèi)跳躍。因?yàn)镻ython經(jīng)過(guò)一個(gè)程序的路徑叫做控制流程,像if這類會(huì)對(duì)其產(chǎn)生影響的語(yǔ)句,通常叫做控制流程語(yǔ)句。 塊和語(yǔ)句的邊界會(huì)自動(dòng)檢測(cè)。Python的程序塊中沒(méi)有大括號(hào)或“begin/end”等分隔字符;反之,Python使用首行下的語(yǔ)句縮進(jìn)把嵌套塊內(nèi)的語(yǔ)句組合起來(lái)。同樣地,Python語(yǔ)句一般是不以分號(hào)終止的,一行的末尾通常就是該行所寫(xiě)語(yǔ)句的結(jié)尾。
復(fù)合語(yǔ)句=首行+“: ” + 縮進(jìn)語(yǔ)句。Python中所有復(fù)合語(yǔ)句都遵循相同格式:首行會(huì)以冒號(hào)終止,再接一個(gè)或多個(gè)嵌套語(yǔ)句,而且通常都是在首行下縮進(jìn)的。縮進(jìn)語(yǔ)句叫做塊(有時(shí)叫做組)。在If語(yǔ)句中,elif和else分句是if的一部分,也是其本身嵌套塊的首行。 空白行、空格以及注釋通常都會(huì)忽略。文件中空白行將忽略(但在交互模式提示符下不會(huì))。語(yǔ)句和表達(dá)式中的空格幾乎都忽略(除了在字符串常量?jī)?nèi),以及用在縮進(jìn)時(shí))。注釋總是忽略:它們以#字符開(kāi)頭(不是在字符串常量?jī)?nèi)),而且延伸至該行的末尾。 文檔字符串(docstring)會(huì)忽略,但會(huì)保存并由工具顯示。Python支持的另一種注釋,叫做文檔字符串(簡(jiǎn)稱docsting)。和#注釋不同的是,文檔字符串會(huì)在運(yùn)行時(shí)保留下來(lái)以便查看。文檔字符串只是出現(xiàn)在程序文件和一些語(yǔ)句頂端的字符串中。Python會(huì)忽略這些內(nèi)容,但是,在運(yùn)行時(shí)會(huì)自動(dòng)將其附加在對(duì)象上,而且能由 文檔工具顯示。
while和for循環(huán)
while語(yǔ)句是Python語(yǔ)言中最通用的迭代結(jié)構(gòu)。
>>> x = 'spam' >>> while x: ... print(x,end='') ... x = x[1:] ... spampamamm>>>
注意,這里使用end= ‘'關(guān)鍵字參數(shù),使所有輸出都出現(xiàn)在同一行,之間用空格隔開(kāi);
在python中:
break : 跳出最近所在的循環(huán)(跳過(guò)整個(gè)循環(huán)語(yǔ)句)
continue : 跳到最近所在循環(huán)的開(kāi)頭處(來(lái)到循環(huán)的首行)
pass:什么事也不做,只是空占位語(yǔ)句
循環(huán)else塊:只有當(dāng)循環(huán)正常離開(kāi)時(shí)才會(huì)執(zhí)行(也就是沒(méi)有碰到break語(yǔ)句)
相關(guān)文章
python爬蟲(chóng)實(shí)現(xiàn)獲取下一頁(yè)代碼
在本篇文章里小編給大家整理了關(guān)于python爬蟲(chóng)實(shí)現(xiàn)獲取下一頁(yè)代碼內(nèi)容,需要的朋友們可以參考學(xué)習(xí)下。2020-03-03
python教程之利用pyautogui圖形自動(dòng)化擊敗重復(fù)性辦公任務(wù)
在使用Python做腳本的話,有兩個(gè)庫(kù)可以使用,一個(gè)為PyUserInput庫(kù),另一個(gè)為pyautogui庫(kù),就本人而言更喜歡使用pyautogui庫(kù),該庫(kù)功能多,使用便利,下面這篇文章主要給大家介紹了關(guān)于python教程之利用pyautogui圖形自動(dòng)化擊敗重復(fù)性辦公任務(wù)的相關(guān)資料,需要的朋友可以參考下2022-03-03
python中pow函數(shù)用法及功能說(shuō)明
在本篇文章里小編給大家整理的是一篇關(guān)于python中pow函數(shù)用法及功能說(shuō)明內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。2020-12-12
python中[[]] * (n)和[[] for _ in 
本文主要介紹了python中[[]] * (n)和[[] for _ in range(n)]的區(qū)別詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-02-02
Python中使用defaultdict和Counter的方法
本文深入探討了Python中的兩個(gè)強(qiáng)大工具——defaultdict和Counter,并詳細(xì)介紹了它們的工作原理、應(yīng)用場(chǎng)景以及在實(shí)際編程中的高效使用方法,感興趣的朋友跟隨小編一起看看吧2025-01-01
Python實(shí)現(xiàn)簡(jiǎn)易的限流器介紹
快速解決cv2.imread()讀取圖像為BGR的問(wèn)題

