# `token` — Constants used with Python parse trees

Código fuente: Lib/token.py

Este módulo proporciona constantes que representan los valores numéricos de los nodos hoja del árbol de análisis (tokens terminales). Consulte el archivo `Grammar/Tokens` en la distribución de Python para conocer las definiciones de los nombres en el contexto de la gramática del lenguaje. Los valores numéricos específicos a los que se asignan los nombres pueden cambiar entre las versiones de Python.

El módulo también proporciona un mapeo de códigos numéricos a nombres y algunas funciones. Las funciones asemejan definiciones en los archivos Python C encabezados.

token.tok_name

  Diccionario que mapea los valores numéricos de las constantes definidas en este módulo a cadenas de nombres, permitiendo una representación de árboles de sintaxis a ser generados más legible para humanos.

token.ISTERMINAL(x)

  Retorna `True` para valores token terminales.

token.ISNONTERMINAL(x)

  Retorna `True` para valores token no terminales.

token.ISEOF(x)

  Retorna `True` si x es el marcador indicando el final del input.

Las constantes de token son:

token.ENDMARKER

token.NAME

token.NUMBER

token.STRING

token.NEWLINE

token.INDENT

token.DEDENT

token.LPAR

  Valor de token para `"("`.

token.RPAR

  Valor de token para `")"`.

token.LSQB

  Valor de token para `"["`.

token.RSQB

  Valor de token para `"]"`.

token.COLON

  Valor de token para `":"`.

token.COMMA

  Valor de token para `","`.

token.SEMI

  Valor de token para `";"`.

token.PLUS

  Valor de token para `"+"`.

token.MINUS

  Valor de token para `"-"`.

token.STAR

  Valor de token para `"*"`.

token.SLASH

  Valor de token para `"/"`.

token.VBAR

  Valor de token para `"|"`.

token.AMPER

  Valor de token para `"&"`.

token.LESS

  Valor de token para `"<"`.

token.GREATER

  Valor de token para `">"`.

token.EQUAL

  Valor de token para `"="`.

token.DOT

  Valor de token para `"."`.

token.PERCENT

  Valor de token para `"%"`.

token.LBRACE

  Valor de token para `"{"`.

token.RBRACE

  Valor de token para `"}"`.

token.EQEQUAL

  Valor de token para `"=="`.

token.NOTEQUAL

  Valor de token para `"!="`.

token.LESSEQUAL

  Valor de token para `"<="`.

token.GREATEREQUAL

  Valor de token para `">="`.

token.TILDE

  Valor de token para `"~"`.

token.CIRCUMFLEX

  Valor de token para `"^"`.

token.LEFTSHIFT

  Valor de token para `"<<"`.

token.RIGHTSHIFT

  Valor de token para `">>"`.

token.DOUBLESTAR

  Valor de token para `"**"`.

token.PLUSEQUAL

  Valor de token para `"+="`.

token.MINEQUAL

  Valor de token para `"-="`.

token.STAREQUAL

  Valor de token para `"*="`.

token.SLASHEQUAL

  Valor de token para `"/="`.

token.PERCENTEQUAL

  Valor de token para `"%="`.

token.AMPEREQUAL

  Valor de token para `"&="`.

token.VBAREQUAL

  Valor de token para `"|="`.

token.CIRCUMFLEXEQUAL

  Valor de token para `"^="`.

token.LEFTSHIFTEQUAL

  Valor de token para `"<<="`.

token.RIGHTSHIFTEQUAL

  Valor de token para `">>="`.

token.DOUBLESTAREQUAL

  Valor de token para `"**="`.

token.DOUBLESLASH

  Valor de token para `"//"`.

token.DOUBLESLASHEQUAL

  Valor de token para `"//="`.

token.AT

  Valor de token para `"@"`.

token.ATEQUAL

  Valor de token para `"@="`.

token.RARROW

  Valor de token para `"->"`.

token.ELLIPSIS

  Valor de token para `"..."`.

token.COLONEQUAL

  Valor de token para `":="`.

token.EXCLAMATION

  Valor de token para `"!"`.

token.OP

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

Los siguientes tipos de valores tokens no son usados por el tokenizador C pero son necesarios para el módulo `tokenize`.

token.COMMENT

  Valores token usados para indicar un comentario.

token.NL

  Valor token usado para indicar una nueva línea no terminante. El token `NEWLINE` indica el final de una línea lógica de código Python; los tokens `NL` son generados cuando una línea lógica de código es continuada sobre múltiples líneas físicas.

token.ENCODING

  Valor de token que indica la codificación usada para decodificar los bytes de origen en texto. El primer token retornado por `tokenize.tokenize()` siempre será un token `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`.

Distinto en la versión 3.5: Added `AWAIT` and `ASYNC` tokens.

Distinto en la versión 3.7: Agregados los tokens `COMMENT`, `NL` y `ENCODING`.

Distinto en la versión 3.7: Removed `AWAIT` and `ASYNC` tokens. «async» and «await» are now tokenized as `NAME` tokens.

Distinto en la versión 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).

Distinto en la versión 3.13: Removed `AWAIT` and `ASYNC` tokens again.