# `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 value for `"("`.

token.RPAR

  Token value for `")"`.

token.LSQB

  Token value for `"["`.

token.RSQB

  Token value for `"]"`.

token.COLON

  Token value for `":"`.

token.COMMA

  Token value for `","`.

token.SEMI

  Token value for `";"`.

token.PLUS

  Token value for `"+"`.

token.MINUS

  Token value for `"-"`.

token.STAR

  Token value for `"*"`.

token.SLASH

  Token value for `"/"`.

token.VBAR

  Token value for `"|"`.

token.AMPER

  Token value for `"&"`.

token.LESS

  Token value for `"<"`.

token.GREATER

  Token value for `">"`.

token.EQUAL

  Token value for `"="`.

token.DOT

  Token value for `"."`.

token.PERCENT

  Token value for `"%"`.

token.LBRACE

  Token value for `"{"`.

token.RBRACE

  Token value for `"}"`.

token.EQEQUAL

  Token value for `"=="`.

token.NOTEQUAL

  Token value for `"!="`.

token.LESSEQUAL

  Token value for `"<="`.

token.GREATEREQUAL

  Token value for `">="`.

token.TILDE

  Token value for `"~"`.

token.CIRCUMFLEX

  Token value for `"^"`.

token.LEFTSHIFT

  Token value for `"<<"`.

token.RIGHTSHIFT

  Token value for `">>"`.

token.DOUBLESTAR

  Token value for `"**"`.

token.PLUSEQUAL

  Token value for `"+="`.

token.MINEQUAL

  Token value for `"-="`.

token.STAREQUAL

  Token value for `"*="`.

token.SLASHEQUAL

  Token value for `"/="`.

token.PERCENTEQUAL

  Token value for `"%="`.

token.AMPEREQUAL

  Token value for `"&="`.

token.VBAREQUAL

  Token value for `"|="`.

token.CIRCUMFLEXEQUAL

  Token value for `"^="`.

token.LEFTSHIFTEQUAL

  Token value for `"<<="`.

token.RIGHTSHIFTEQUAL

  Token value for `">>="`.

token.DOUBLESTAREQUAL

  Token value for `"**="`.

token.DOUBLESLASH

  Token value for `"//"`.

token.DOUBLESLASHEQUAL

  Token value for `"//="`.

token.AT

  Token value for `"@"`.

token.ATEQUAL

  Token value for `"@="`.

token.RARROW

  Token value for `"->"`.

token.ELLIPSIS

  Token value for `"..."`.

token.COLONEQUAL

  Token value for `":="`.

token.OP

token.AWAIT

token.ASYNC

token.TYPE_IGNORE

token.TYPE_COMMENT

token.SOFT_KEYWORD

token.ERRORTOKEN

token.N_TOKENS

token.NT_OFFSET

The following token type values aren’t used by the C tokenizer but are needed for the `tokenize` module.

token.COMMENT

  Token value used to indicate a comment.

token.NL

  Token value used to indicate a non-terminating newline. The `NEWLINE` token indicates the end of a logical line of Python code; `NL` tokens are generated when a logical line of code is continued over multiple physical lines.

token.ENCODING

  Значення маркера, яке вказує на кодування, яке використовується для декодування вихідних байтів у текст. Перший маркер, який повертає `tokenize.tokenize()`, завжди буде маркером `ENCODING`.

token.TYPE_COMMENT

  Token value indicating that a type comment was recognized. Such tokens are only produced when `ast.parse()` is invoked with `type_comments=True`.

Змінено в версії 3.5: Added `AWAIT` and `ASYNC` tokens.

Змінено в версії 3.7: Додано маркери `COMMENT`, `NL` і `ENCODING`.

Змінено в версії 3.7: Removed `AWAIT` and `ASYNC` tokens. «async» and «await» are now tokenized as `NAME` tokens.

Змінено в версії 3.8: Added `TYPE_COMMENT`, `TYPE_IGNORE`, `COLONEQUAL`. Added `AWAIT` and `ASYNC` tokens back (they’re needed to support parsing older Python versions for `ast.parse()` with `feature_version` set to 6 or lower).