token — Constants used with Python parse trees

Вихідний код: Lib/token.py


Цей модуль надає константи, які представляють числові значення листових вузлів дерева розбору (термінальні маркери). Зверніться до файлу Grammar/Tokens у дистрибутиві Python для визначення імен у контексті граматики мови. Конкретні числові значення, на які зіставляються імена, можуть змінюватися між версіями Python.

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

token.tok_name

Словник відображає числові значення констант, визначених у цьому модулі, на рядки імен, що дозволяє створити більш зрозуміле для людини представлення дерев розбору.

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 value for "!".

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.

Змінено в версії 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 або нижче).