token --- 用于 Python 解析树的常量¶
源码: Lib/token.py
该模块提供了一些代表解析树的叶子节点的数字值的常量(终端形符)。 请参阅 Python 发布版中的 Grammar/Tokens 文件获取在该语言语法情境下的名称定义。 这些名称所映射的特定数字值有可能在各 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.EXCLAMATION¶
"!"的形符值。
- token.OP¶
- token.TYPE_IGNORE¶
- token.TYPE_COMMENT¶
- token.SOFT_KEYWORD¶
- token.FSTRING_START¶
- token.FSTRING_MIDDLE¶
- token.FSTRING_END¶
- token.COMMENT¶
- token.NL¶
- 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被发起调用时才会产生。
- token.EXACT_TOKEN_TYPES¶
将形符字符串表示形式映射到其数字代码的字典。
Added in version 3.8.
在 3.5 版本发生变更: 增加了 AWAIT 和 ASYNC 形符。
在 3.7 版本发生变更: 移除了 AWAIT 和 ASYNC 形符。 "async" 和 "await" 被形符化为 NAME 形符。
在 3.8 版本发生变更: 增加了 TYPE_COMMENT, TYPE_IGNORE, COLONEQUAL。 重新增加了 AWAIT 和 ASYNC 形符(需要用它们来支持解析 ast.parse() 的 feature_version 设为 6 或更低的较旧 Python 版本)。
在 3.13 版本发生变更: 重新移除了 AWAIT 和 ASYNC 形符。