1. 程式人生 > >Python關鍵字keyword

Python關鍵字keyword

程式碼版本:3.6.3 

關鍵字

 關鍵字是指Python中的保留字,是已經規定好的有其固定作用的詞,定義變數時不能與關鍵字重名。關鍵字不是變數,只是一種有特殊用處的詞語。keyword模組中的kwlist是一個列表,存放了Python中所有的關鍵字(str格式)。關鍵字其實很好分辨,就是編寫程式碼時那些不曾定義過就直接使用的單詞(不是符號),而且使用時決不能帶括號,那就一定是關鍵字,用這個規則,再回憶編寫一個模組的過程,就能把所有關鍵字想出來了。

Python3和2的關鍵字

Python3共有33個關鍵字,Python2共有31個關鍵字,下面有Python3中的所有關鍵字。比Python2中的關鍵字少了`exec`和`print`,多了`False`、`True`、`None`和`nonlocal`

,這三個也是僅有的首字母大寫的。

import keyword

print(keyword.kwlist)
print(keyword.iskeyword('is'))

執行結果 

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

記憶思路(腦子瓦特了才背這個呢,別看)

匯入:
import as from

定義、釋放:
class def lambda del
pass 
global nonlocal 
return yield

迴圈、判斷:
while for in if else elif 
is not and or 
None True False
break continue

異常、斷言:
try except finally with
raise assert

keyword模組提供了兩個物件

# keyword.py 部分原始碼

__all__ = ["iskeyword", "kwlist"]

keyword.kwlist是一個列表,裡面放著所有的關鍵字。

keyword.iskeyword()接收一個字串引數,返回其是不是關鍵字(True/False)

iskeyword呼叫的是魔法方法__contains__

# keyword.py 部分原始碼

iskeyword = frozenset(kwlist).__contains__