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
Truepara valores token terminales.
- token.ISNONTERMINAL(x)¶
Retorna
Truepara valores token no terminales.
- token.ISEOF(x)¶
Retorna
Truesi 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
NEWLINEindica el final de una línea lógica de código Python; los tokensNLson 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).