欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

keyword学习

程序员文章站 2024-03-24 08:20:04
...

keyword学习

在keyword里主要有两个成员
kwlist:关键字集合
iskeyword:判断一个str是否为关键字

比如

import keyword
print(keyword.kwlist)
print(keyword.iskeyword('none'))
print(keyword.iskeyword('None'))

输出结果

['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', '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']
False
True

在keyword.py中iskeyword的函数原型是

iskeyword = frozenset(kwlist).__contains__
frozenset 是python的内置函数
frozenset() 返回一个冻结的集合,冻结后集合不能再添加或删除任何元素。
__contains__是class frozenset 的一个成员函数
x.__contains__(y) <==> y in x. 

这部分可在pycharm在的builtins.py下查看
builtins.py这个文件给出的是一些声明,是pycharm为了方便提示加的假代码
而这些基础类型有的实现是C实现的。所以作为IDE,就用pass来代替其内容了。
具体的源代码,可以在gittub查看