token — Constants used with Python parse trees

소스 코드: Lib/token.py


This module provides constants which represent the numeric values of leaf nodes of the parse tree (terminal tokens). Refer to the file Grammar/Tokens in the Python distribution for the definitions of the names in the context of the language grammar. The specific numeric values which the names map to may change between Python versions.

이 모듈은 숫자 코드에서 이름으로의 매핑과 몇몇 함수도 제공합니다. 이 함수는 파이썬 C 헤더 파일의 정의를 반영합니다.

token.tok_name

이 모듈에 정의된 상수의 숫자 값을 다시 이름 문자열로 매핑하여 사람이 읽을 수 있는 구문 분석 트리 표현을 생성할 수 있도록 하는 딕셔너리.

token.ISTERMINAL(x)

터미널 토큰값이면 True를 반환합니다.

token.ISNONTERMINAL(x)

비 터미널 토큰값이면 True를 반환합니다.

token.ISEOF(x)

x가 입력의 마지막을 나타내는 표시면 True를 반환합니다.

토큰 상수는 다음과 같습니다:

token.ENDMARKER
token.NAME
token.NUMBER
token.STRING
token.NEWLINE
token.INDENT
token.DEDENT
token.LPAR

"("의 토큰값.

token.RPAR

")"의 토큰값.

token.LSQB

"["의 토큰값.

token.RSQB

"]"의 토큰값.

token.COLON

":"의 토큰값.

token.COMMA

","의 토큰값.

token.SEMI

";"의 토큰값.

token.PLUS

"+"의 토큰값.

token.MINUS

"-"의 토큰값.

token.STAR

"*"의 토큰값.

token.SLASH

"/"의 토큰값.

token.VBAR

"|"의 토큰값.

token.AMPER

"&"의 토큰값.

token.LESS

"<"의 토큰값.

token.GREATER

">"의 토큰값.

token.EQUAL

"="의 토큰값.

token.DOT

"."의 토큰값.

token.PERCENT

"%"의 토큰값.

token.LBRACE

"{"의 토큰값.

token.RBRACE

"}"의 토큰값.

token.EQEQUAL

"=="의 토큰값.

token.NOTEQUAL

"!="의 토큰값.

token.LESSEQUAL

"<="의 토큰값.

token.GREATEREQUAL

">="의 토큰값.

token.TILDE

"~"의 토큰값.

token.CIRCUMFLEX

"^"의 토큰값.

token.LEFTSHIFT

"<<"의 토큰값.

token.RIGHTSHIFT

">>"의 토큰값.

token.DOUBLESTAR

"**"의 토큰값.

token.PLUSEQUAL

"+="의 토큰값.

token.MINEQUAL

"-="의 토큰값.

token.STAREQUAL

"*="의 토큰값.

token.SLASHEQUAL

"/="의 토큰값.

token.PERCENTEQUAL

"%="의 토큰값.

token.AMPEREQUAL

"&="의 토큰값.

token.VBAREQUAL

"|="의 토큰값.

token.CIRCUMFLEXEQUAL

"^="의 토큰값.

token.LEFTSHIFTEQUAL

"<<="의 토큰값.

token.RIGHTSHIFTEQUAL

">>="의 토큰값.

token.DOUBLESTAREQUAL

"**="의 토큰값.

token.DOUBLESLASH

"//"의 토큰값.

token.DOUBLESLASHEQUAL

"//="의 토큰값.

token.AT

"@"의 토큰값.

token.ATEQUAL

"@="의 토큰값.

token.RARROW

"->"의 토큰값.

token.ELLIPSIS

"..."의 토큰값.

token.COLONEQUAL

":="의 토큰값.

token.EXCLAMATION

Token value for "!".

token.OP
token.AWAIT
token.ASYNC
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

다음 토큰 유형 값은 C 토크나이저가 사용하지 않지만 tokenize 모듈에 필요합니다.

token.COMMENT

주석을 나타내는 데 사용되는 토큰값.

token.NL

비종결 줄넘김을 나타내는데 사용되는 토큰값. NEWLINE 토큰은 파이썬 코드의 논리적 줄의 끝을 나타냅니다; NL 토큰은 코드의 논리적 줄이 여러 물리적 줄로 이어질 때 생성됩니다.

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.

token.EXACT_TOKEN_TYPES

A dictionary mapping the string representation of a token to its numeric code.

Added in version 3.8.

버전 3.5에서 변경: AWAITASYNC 토큰이 추가되었습니다.

버전 3.7에서 변경: COMMENT, NLENCODING 토큰이 추가되었습니다.

버전 3.7에서 변경: AWAITASYNC 토큰이 제거되었습니다. “async”와 “await”는 이제 NAME 토큰으로 토큰화됩니다.

버전 3.8에서 변경: TYPE_COMMENT, TYPE_IGNORE, COLONEQUAL이 추가되었습니다. AWAITASYNC 토큰을 다시 추가했습니다 (feature_version을 6 이하로 설정하여 ast.parse()로 구형 파이썬 버전의 구문 분석을 지원하는 데 필요합니다).