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

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

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


Этот модуль предоставляет константы, представляющие числовые значения листовых узлов\nдерева разбора (терминальных токенов). Файл Grammar/Tokens\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.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

Значение токена, указывающее, что был распознан комментарий типа. Такие токены создаются только при вызове ast.parse() с type_comments=True.

token.EXACT_TOKEN_TYPES

Словарь, сопоставляющий строковое представление токена с его числовым кодом.

Добавлено в версии 3.8.

Изменено в версии 3.5: Добавлены токены AWAIT и ASYNC.

Изменено в версии 3.7: Добавлены токены COMMENT, NL и ENCODING.

Изменено в версии 3.7: Удалены токены AWAIT и ASYNC. «async» и «await» теперь токенизируются как токены NAME.

Изменено в версии 3.8: Добавлены токены TYPE_COMMENT, TYPE_IGNORE, COLONEQUAL. Добавлены обратно токены AWAIT и ASYNC (они необходимы для поддержки разбора старых версий Python для ast.parse() с feature_version, установленным в 6 или ниже).