python standard library keyword

python 标准库 keyword

闺女语录:

我和同事聊天说起,养个孩子容易吗! 我闺女说,“养什么容易啊。”

同事咂舌,这个小孩不简单。

每日一词:

candaign [kæm’peɪn]

  • n.战役;运动(为社会、商业或政治目的而进行的一系列有计划的活动)
  • v.领导运动(如为实现政治变革或赢得竞选)
  • 网络战役模式;竞选运动;广告活动

这估计是标准库中最简单的模块了

源代码比较少,这就直接贴出来了

源码: Lib/keyword.py

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
kwlist = [
'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'
]

iskeyword = frozenset(kwlist).__contains__

此模块允许 Python 程序确定字符串是否为关键字。

  • keyword.iskeyword(s)

    如果 s 是一个 Python 保留关键字则返回 True,否则返回False

  • keyword.kwlist

    序列包含为解释器定义的所有关键字。 如果任何被定义的关键字为仅在 __future__ 语句生效是特定时间处于活动状态,则也将包含这些关键字。

    其实就是获得所有关键字构成的列表。

源码分析

这里主要涉及两个知识点:

  1. 冻结集合: frozenset 通过这个函数,创建一个由参数构成的不可变集合。

  2. 魔术方法 __contains__ : 定义当使用成员测试运算符(in 或 not in)时的行为

坚持原创技术分享,您的支持将鼓励我继续创作!
0%