token
— Constantes usadas con árboles de sintaxis de Python¶
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¶
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¶
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 tokensNL
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 tokenENCODING
.
- token.TYPE_COMMENT
Valor token indicando que un tipo comentario fue reconocido. Dichos tokens solo son producidos cuando
ast.parse()
es invocado contype_comments=True
.
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).