Python包含的保留字

2021-09-06 09:50:32 字數 3805 閱讀 2328

python 包含的保留字可以執行如下命令進行檢視:

>>> import keyword

>>> keyword.kwlist

['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']

所有的保留字,如下表所示:

表 1 python 保留字一覽表

andasassert

break

class

continue

defdel

elif

else

except

finally

forfrom

false

global

ifimport

inis

lambda

nonlocal

notnone

orpass

raise

return

trytrue

while

with

yield

需要注意的是,由於 python 是嚴格區分大小寫的,保留字也不例外。所以,我們可以說 if 是保留字,但 if 就不是保留字。

1.and , or

and , or 為邏輯關係用語,python具有短路邏輯,false and 返回 false 

不執行後面的語句, true or 直接返回true,不執行後面的語句 

2.del

刪除變數

而列表本身包含的是變數,

3.from

from引用模組時會用到

4.golbal

golbal為全域性變數,但當單個函式中出現同一變數名時,在單個函式中為區域性變數

5.with

with被用來處理異常

緊跟with後面的語句被求值後,返回物件的enter()方法被呼叫,這個方法的返回值將被賦值給as後面的變數,此處為file 

當with後面的**塊全部被執行完後,將呼叫前面返回物件的exit()方法

實際上,在with後面的**塊丟擲任何異常時,exit()方法被執行。 

正如例子所示,異常丟擲時,與之關聯的type,value和stack trace傳給exit()方法, 

因此丟擲的zerodivisionerror異常被列印出來了。

開發庫時,清理資源,關閉檔案等等操作,都可以放在exit方法當中。

6.while, for…in…

均為迴圈語句,使用while時要注意成立條件,防止陷入死迴圈 

for in 遍歷

7.assert

斷言,宣告其布林值必須為真的判定,如果發生異常就說明表達示為假。 

可以理解assert斷言語句為raise-if-not,用來測試表示式,其返回值為假,就會觸發異常。

8.pass

pass是空語句,為了保證程式結構的完整性, 

pass不做任何事情,一般用作 佔位語句 

當你編寫程式部分內容還沒想好,可用pass語句佔位

9.yield

yield的意思是生產,返回了乙個生成器物件,每個生成器只能使用一次

乙個帶有 yield的函式就是乙個generation,他和普通函式不同,生成乙個generator看起來像函式呼叫,但不會執行任何函式**,直到對其呼叫.next()(在 for 迴圈中會自動呼叫 next())才開始執行 

雖然執行流程仍按函式的流程執行,但每執行到乙個 yield 語句就會中斷,並返回乙個迭代值,下次執行時從 yield 的下乙個語句繼續執行。看起來就好像乙個函式在正常執行的過程中被 yield 中斷了數次,每次中斷都會通過 yield 返回當前的迭代值。

send() 與next()

10.break 與 contiue

python break語句用來終止迴圈,用在while和for迴圈中!!直接跳出 整個 迴圈 

巢狀迴圈,break語句將停止執行最深層的迴圈,並開始執行下一行**

break是跳出整個迴圈,continue是跳出當前迴圈

11.try except finally

如果當try後的語句執行時發生異常,python就跳回到try並執行第乙個匹配該異常的except子句,異常處理完畢,控制流就通過整個try語句(除非在處理異常時又引發新的異常)。 

如果在try後的語句裡發生了異常,卻沒有匹配的except子句,異常將被遞交到上層的try,或者到程式的最上層(這樣將結束程式,並列印預設的出錯資訊)。 

如果在try子句執行時沒有發生異常,python將執行else語句後的語句(如果有else的話),然後控制流通過整個try語句。

12.raise

觸發異常 

raise [exception[,args[,traceback]]] 

語句中exception是異常的型別(例如,nameerror)引數是乙個異常引數值。 

該引數是可選的,如果不提供,異常的引數是」none」。 

最後乙個引數是可選的(在實踐中很少使用),如果存在,是跟蹤異常物件。

raise 觸發異常後,後面的**就不會再執行

die函式,列印錯誤資訊

13.exec–eval–execfile

exec 用來執行儲存在字串或檔案中的python語句 

exec是一條語句將字串str當成有效的python**來執行 

eval與execfile是pytho內建函式 

eval(str[globals[locals]])函式將字串str當成有效的python表示式來求值,並提供返回計算值

execfile(filename)函式可以用來執行檔案

from os.path import exists 

exists(file)將檔名字串作為引數,如果檔案存在返回true,否則返回false

14.return

return 是函式返回值

15.lambda—filter—map—reduce—

lambda 只是乙個表示式,定義了乙個匿名函式,起到函式速寫的作用 

由於lambda只是乙個表示式,它可以直接作為python 列表或python 字典的成員,比如

map(function, sequence) 

對sequence中的item 依次執行 function,將執行結果組成list返回 

單個引數

多個引數,要求函式接受多個引數

reduce(function, sequence, starting_value) 

對sequence中的item順序迭代呼叫function,如果有starting_value, 

還可以作為初始值呼叫,例如可以用來對list求和

python保留字 python保留字有哪些

布林型別的值,表示假,與true對應 2 class 定義類的關鍵字 3 finally 異常處理使用的關鍵字,用它可以指定始終執行的 指定 在finally裡面 例如 class myexception exception pass try some code here raise myexcep...

python的保留字

保留字是python語言中一些已經被賦予特定意義的單詞,在軟體開發中,不允許使用保留字用於變數,函式,類模組以及其他物件的名稱。python保留字 and as assert break class continue def del elif else except finally for from...

python保留字及其說明

保留字 說 明 and用於表示式運算,邏輯與操作 as用於型別轉換 assert 斷言,用於判斷變數或條件表示式的值是否為真 break 中斷迴圈語句的執行 class 用於定義類 continue 繼續執行下一次迴圈 def用於定義函式或方法 del刪除變數或序列的值 elif 條件語句,與if,...