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.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.AWAIT¶
- token.ASYNC¶
- 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
指示识别类型注释的标记化值。仅当使用
type_comments=True
调用ast.parse()
时,才生成此类标记化。
在 3.8 版本中更改: 已添加 TYPE_COMMENT
、TYPE_IGNORE
、COLONEQUAL
。已添加 AWAIT
和 ASYNC
标记(它们是支持解析较旧 Python 版本以供 ast.parse()
使用,其中 feature_version
设置为 6 或更低)。