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

来自菜鸟教程
Python/docs/2.7/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.BACKQUOTE
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.OP
token.ERRORTOKEN
token.N_TOKENS
token.NT_OFFSET

也可以看看

模块解析器
parser 模块的第二个例子展示了如何使用 symbol 模块。