代码版本:3.6.3
关键字是指Python中的保留字,是已经定义好的有其固定作用的词,定义变量时不能与关键字重名。keyword模块中的kwlist是一个列表,存放了Python中所有的关键字(str格式)。关键字其实很好分辨,就是编写代码时那些不曾定义过就直接使用的词语,而且是不加括号的使用,那就一定是关键字,用这个规则,再回忆编写一个模块的过程,就能把所有关键字想出来了。
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 pass global nonlocal return yield
循环、判断、异常捕获:
while for in if else elif try except finally
is not and or None True False
break continue
raise assert
两个单独记:
del
with
"""
keyword模块提供了两个对象
"""keyword.py 部分源码"""
__all__ = ["iskeyword", "kwlist"]
keyword.kwlist是一个列表,里面放着所有的关键字。
keyword.iskeyword()接收一个字符串参数,返回其是不是关键字(True/False)
iskeyword调用的是魔法方法__contains__
"""keyword.py 部分源码"""
iskeyword = frozenset(kwlist).__contains__