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

源码: Lib/token.py


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

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

token.tok_name

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

token.ISTERMINAL(x)

对终端标记值返回 True

token.ISNONTERMINAL(x)

对非终端标记值返回 True

token.ISEOF(x)

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

标记常量是:

token.ENDMARKER
token.NAME
token.NUMBER
token.STRING
token.NEWLINE
token.INDENT
token.DEDENT
token.LPAR

"(" 的权标值。

token.RPAR

")" 的权标值。

token.LSQB

"[" 的权标值。

token.RSQB

"]" 的权标值。

token.COLON

":" 的权标值。

token.COMMA

"," 的权标值。

token.SEMI

";" 的权标值。

token.PLUS

"+" 的权标值。

token.MINUS

"-" 的权标值。

token.STAR

"*" 的权标值。

token.SLASH

"/" 的权标值。

token.VBAR

"|" 的权标值。

token.AMPER

"&" 的权标值。

token.LESS

"<" 的权标值。

token.GREATER

">" 的权标值。

token.EQUAL

"=" 的形符值。

token.DOT

"." 的形符值。

token.PERCENT

"%"

token.LBRACE

Token value for "{".

token.RBRACE

"}" 的形符值。

token.EQEQUAL

"==" 的形符值。

token.NOTEQUAL

"!=" 的形符值。

token.LESSEQUAL

"<=" 的形符值。

token.GREATEREQUAL

">=" 的形符值。

token.TILDE

"~" 的形符值。

token.CIRCUMFLEX

"^" 的形符值。

token.LEFTSHIFT

"<<" 的形符值。

token.RIGHTSHIFT

">>" 的形符值。

token.DOUBLESTAR

"**" 的形符值。

token.PLUSEQUAL

"+=" 的形符值。

token.MINEQUAL

"-=" 的形符值。

token.STAREQUAL

"*=" 的形符值。

token.SLASHEQUAL

"/=" 的形符值。

token.PERCENTEQUAL

"%=" 的形符值。

token.AMPEREQUAL

"&=" 的形符值。

token.VBAREQUAL

"|=" 的形符值。

token.CIRCUMFLEXEQUAL

"^=" 的形符值。

token.LEFTSHIFTEQUAL

"<<=" 的形符值。

token.RIGHTSHIFTEQUAL

">>=" 的形符值。

token.DOUBLESTAREQUAL

"**=" 的形符值。

token.DOUBLESLASH

"//" 的形符值。

token.DOUBLESLASHEQUAL

"//=" 的形符值。

token.AT

"@" 的形符值。

token.ATEQUAL

"@=" 的形符值。

token.RARROW

"->" 的形符值。

token.ELLIPSIS

"..." 的形符值。

token.COLONEQUAL

":=" 的形符值。

token.OP
token.AWAIT
token.ASYNC
token.TYPE_IGNORE
token.TYPE_COMMENT
token.ERRORTOKEN
token.N_TOKENS
token.NT_OFFSET

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

token.COMMENT

标记值用于表示注释。

token.NL

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

token.ENCODING

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

token.TYPE_COMMENT

表示类型注释被识别的形符值。 此种形符仅在 ast.parse() 附带 type_comments=True 被发起调用时才会产生。

3.5 版更變: 补充 AWAITASYNC 标记。

3.7 版更變: 补充 COMMENTNLENCODING 标记。

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

3.8 版更變: 增加了 TYPE_COMMENT, TYPE_IGNORE, COLONEQUAL. Added AWAITASYNC 形符(它们对于支持解析对于 ast.parse()feature_version 设为 6 或更低的较老的 Python 版本是必须的)。