# `token`— Constantes usadas con árboles de sintaxis de Python

Código fuente: Lib/token.py

Este módulo provee constantes que representan los valores numéricos de nodos hoja de un árbol de sintaxis (tokens terminales). Referirse al archivo `Grammar/Grammar` en la distribución de Python para las definiciones de los nombres en el contexto de gramática del lenguaje. Los valores numéricos específicos a los que los nombres mapean pueden cambiar entre 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`

  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.``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 modulo `tokenizador`.

`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`

  Valor token indicando que un tipo comentario fue reconocido. Dichos tokens solo son producidos cuando `ast.parse()` es invocado con `type_comments=True`.

Distinto en la versión 3.5: Agregados los tokens `AWAIT` y `ASYNC`.

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

Distinto en la versión 3.7: Removidos los tokens `AWAIT` y `ASYNC`. «async» y «await» son ahora tokenizados como `NAME` tokens.

Distinto en la versión 3.8: Agregados `TYPE_COMMENT`, `TYPE_IGNORE`, `COLONEQUAL`. Agregados de regreso los tokens `AWAIT` y `ASYNC` (son necesarios para dar soporte en la sintaxis de versiones más antiguas de Python para `ast.parse()` con `feature_version` establecido a 6 o menor).