token --- 与Python解析树一起使用的常量P

源码: Lib/token.py


此模块提供表示解析树(终端令牌)的叶节点的数值的常量。 请参阅 Python 发行版中的文件 Grammar/Grammar ,以获取语言语法上下文中名称的定义。 名称映射到的特定数值可能会在 Python 版本之间更改。

该模块还提供从数字代码到名称和一些函数的映射。 这些函数镜像了 Python C 头文件中的定义。

token.tok_nameP

将此模块中定义的常量的数值映射回名称字符串的字典,允许生成更加人类可读的解析树表示。

token.ISTERMINAL(x)P

对终端标记值返回 True

token.ISNONTERMINAL(x)P

对非终端标记值返回 True

token.ISEOF(x)P

如果 x 是表示输入结束的标记则返回 True

标记常量是:

token.ENDMARKERP
token.NAMEP
token.NUMBERP
token.STRINGP
token.NEWLINEP
token.INDENTP
token.DEDENTP
token.LPARP
token.RPARP
token.LSQBP
token.RSQBP
token.COLONP
token.COMMAP
token.SEMIP
token.PLUSP
token.MINUSP
token.STARP
token.SLASHP
token.VBARP
token.AMPERP
token.LESSP
token.GREATERP
token.EQUALP
token.DOTP
token.PERCENTP
token.LBRACEP
token.RBRACEP
token.EQEQUALP
token.NOTEQUALP
token.LESSEQUALP
token.GREATEREQUALP
token.TILDEP
token.CIRCUMFLEXP
token.LEFTSHIFTP
token.RIGHTSHIFTP
token.DOUBLESTARP
token.PLUSEQUALP
token.MINEQUALP
token.STAREQUALP
token.SLASHEQUALP
token.PERCENTEQUALP
token.AMPEREQUALP
token.VBAREQUALP
token.CIRCUMFLEXEQUALP
token.LEFTSHIFTEQUALP
token.RIGHTSHIFTEQUALP
token.DOUBLESTAREQUALP
token.DOUBLESLASHP
token.DOUBLESLASHEQUALP
token.ATP
token.ATEQUALP
token.RARROWP
token.ELLIPSISP
token.OPP
token.ERRORTOKENP
token.N_TOKENSP
token.NT_OFFSETP

C 标记生成器不使用以下标记类型值,但 tokenize 模块需要这些标记类型值。

token.COMMENTP

标记值用于表示注释。

token.NLP

标记值用于表示非终止换行符。 NEWLINE 标记表示 Python 代码逻辑行的结束;当在多条物理线路上继续执行逻辑代码行时,会生成 NL 标记。

token.ENCODINGP

指示用于将源字节解码为文本的编码的标记值。 tokenize.tokenize() 返回的第一个标记将始终是一个 ENCODING 标记。

在 3.5 版更改: 补充 AWAITASYNC 标记。

在 3.7 版更改: 补充 COMMENTNLENCODING 标记。

在 3.7 版更改: 移除 AWAITASYNC 标记。 "async" 和 "await" 现在被标记为 NAME 标记。