Dokumen ini untuk versi lama Python yang tidak didukung lagi. Anda harus memutakhirkan, dan membaca Dokumentasi Python untuk rilis stabil saat ini.

# `token` --- Konstanta digunakan dengan pohon pengurai (parse tree) Python

Kode sumber: Lib/token.py

Modul ini menyediakan konstanta yang mewakili nilai numerik dari simpul daun pohon parse (token terminal). Merujuk pada berkas `Grammar/Grammar` dalam distribusi Python untuk definisi nama-nama dalam konteks tata bahasa bahasa. Nilai numerik tertentu yang dipetakan oleh nama-nama dapat berubah antar versi Python.

Modul ini juga menyediakan pemetaan dari kode numerik ke nama dan beberapa fungsi. Fungsi mencerminkan definisi pada file header Python C.

`token.``tok_name`

  Kamus memetakan nilai numerik dari konstanta yang didefinisikan dalam modul ini kembali ke string nama, yang memungkinkan dihasilkannya representasi pohon parse yang lebih dapat dibaca oleh manusia.

`token.``ISTERMINAL`(x)

  Kembalikan `True` untuk nilai-nilai token terminal (akhir).

`token.``ISNONTERMINAL`(x)

  Kembalikan `True` untuk nilai-nilai token non-terminal.

`token.``ISEOF`(x)

  Kembalikan nilai `True` jika x adalah penanda yang menunjukkan akhir input.

Konstanta token antara lain:

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

Nilai tipe token berikut tidak digunakan oleh penanda (tokenizer) C tetapi diperlukan untuk modul `tokenize`.

`token.``COMMENT`

  Nilai token digunakan untuk menunjukkan komentar.

`token.``NL`

  Nilai token digunakan untuk menunjukkan baris baru yang tidak berhenti. Token `NEWLINE` menunjukkan akhir baris logika kode Python; token `NL` dihasilkan ketika satu baris kode logis diteruskan melalui beberapa baris fisik.

`token.``ENCODING`

  Nilai token yang menunjukkan pengodean yang digunakan untuk mendekode sumber byte menjadi teks. Token pertama yang dikembalikan oleh `tokenize.tokenize()` akan selalu menjadi token `ENCODING`.

Berubah pada versi 3.5: Menambahkan token `AWAIT` dan `ASYNC`.

Berubah pada versi 3.7: Menambahkan token `COMMENT`, `NL` dan `ENCODING`.

Berubah pada versi 3.7: Menghapus token `AWAIT` dan `ASYNC`. "async" dan "await" sekarang ditandai sebagai token `NAME`.