32.5. token — 与 Python 解析树一起使用的常量 — Python 文档

来自菜鸟教程
Python/docs/3.6/library/token
跳转至:导航、​搜索

32.5. 令牌 — 与 Python 解析树一起使用的常量

源代码: :source:`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.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.OP
token.AWAIT
token.ASYNC
token.ERRORTOKEN
token.N_TOKENS
token.NT_OFFSET

3.5 版更改: 添加 AWAITASYNC 令牌。 从 Python 3.7 开始,“async”和“await”将被标记为 NAME 标记,并且 AWAITASYNC 将被删除。