-1

https://docs.python.org/3.5/library/token.html

Python 3.5 语法的标记定义中的最后四个标记是什么?

4

1 回答 1

4

令牌.OP

是运算符令牌的概括。tokenize模块中也提到了这一点:

为了简化标记流处理,所有运算符和分隔符标记都使用通用token.OP标记类型返回。确切的类型可以通过检查exact_type从返回的命名元组的属性来确定tokenize.tokenize()

token.ERRORTOKEN

用于在解析器的标记化过程中标记错误。这主要用于生成中止解析过程的语法错误。

tokenize 文档中也提到了它:

请注意,未闭合的单引号字符串不会导致引发错误。它们被标记为ERRORTOKEN,然后是其内容的标记。

令牌.N_TOKENS

只是定义的令牌数。它在解析器中用于迭代令牌列表。

令牌.NT_OFFSET

token.h这样使用的:

/* Special definitions for cooperation with parser */
#define NT_OFFSET       256

#define ISTERMINAL(x)       ((x) < NT_OFFSET)
#define ISNONTERMINAL(x)    ((x) >= NT_OFFSET)

它基本上将终端和非终端令牌分开。

于 2015-07-26T20:51:38.000 回答