token --- Python 解析木と共に使われる定数

ソースコード: Lib/token.py


このモジュールは解析木の葉ノード(終端記号)の数値を表す定数を提供します。言語の文法のコンテキストにおける名前の定義については、 Python ディストリビューションのファイル Grammar/Grammar を参照してください。名前がマップする特定の数値は Python のバージョン間で変わります。

このモジュールは、数値コードから名前へのマッピングと、いくつかの関数も提供しています。関数は Python の C ヘッダファイルの定義を反映します。

token.tok_name

ディクショナリはこのモジュールで定義されている定数の数値を名前の文字列へマップし、より人が読みやすいように解析木を表現します。

token.ISTERMINAL(x)

終端トークンの値に対して True を返します。

token.ISNONTERMINAL(x)

非終端トークンの値に対して True を返します。

token.ISEOF(x)

x が入力の終わりを示すマーカーならば、 True を返します。

token の定数一覧:

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.OP
token.ERRORTOKEN
token.N_TOKENS
token.NT_OFFSET

以下のトークン値は、Cのトークナイザでは利用されませんが、 tokenize モジュールによって利用されます。

token.COMMENT

コメントであることを表すために使われるトークン値です。

token.NL

終わりではない改行を表すために使われるトークン値。 NEWLINE トークンは Pythonコードの論理行の終わりを表します。 ``NL``トークンはコードの論理行が複数の物理行にわたって続いているときに作られます。

token.ENCODING

ソースの bytes をテキストにデコードするために使われるエンコーディングを示すトークン値。tokenize.tokenize() は常に最初に ENCODING トークンを返します。

バージョン 3.5 で変更: AWAITASYNC トークンが追加されました。

バージョン 3.7 で変更: COMMENTNLENCODING トークンが追加されました。

バージョン 3.7 で変更: AWAITASYNC トークンが削除されました。"async" と "await" は、NAME トークンとして扱われます。