Документация Python неофициальный перевод

32.5. token – Константы, используемые с деревьями разбора Pythontoken – Constants used with Python parse trees

Исходный код: Lib/token.py


Этот модуль предоставляет константы, представляющие числовые значения листовых узлов\nдерева разбора (терминальных токенов). Файл Grammar/Grammar\nв дистрибутиве Python содержит определения имён в контексте грамматики языка.\nКонкретные числовые значения, на которые ссылаются имена, могут изменяться между версиями Python.

Модуль также предоставляет отображение числовых кодов на имена и несколько\nфункций. Функции дублируют определения из C-заголовочных файлов Python.

token.tok_name

Словарь, отображающий числовые значения констант, определённых в этом модуле,\nобратно в строки имён, что позволяет создавать более удобочитаемое представление деревьев разбора.

token.ISTERMINAL(x)

Возвращает True для значений терминальных токенов.

token.ISNONTERMINAL(x)

Возвращает True для значений нетерминальных токенов.

token.ISEOF(x)

Возвращает True, если x является маркером, указывающим на конец ввода.

Константы токенов:

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: Добавлены токены AWAIT и ASYNC. Начиная с Python 3.7, “async” и “await” будут токенизироваться как NAME токены, а AWAIT и ASYNC будут удалены.