Senarai kata kunci Python (perkataan simpanan) boleh didapati dalam modul kata kunci perpustakaan standard.
Kata kunci (perkataan simpanan) tidak boleh digunakan sebagai nama (pengecam) untuk nama pembolehubah, nama fungsi, nama kelas, dsb.
- Artikel berkaitan:Nama yang sah dan tidak sah serta konvensyen penamaan untuk pengecam (cth. nama pembolehubah) dalam Python
Maklumat berikut disediakan di sini.
- Dapatkan senarai kata kunci Python (perkataan simpanan):
keyword.kwlist
- Semak sama ada rentetan itu ialah kata kunci (perkataan simpanan):
keyword.iskeyword()
- Perbezaan antara kata kunci dan perkataan terpelihara
Seperti yang dinyatakan dalam bahagian terakhir, kata kunci dan perkataan terpelihara adalah konsep yang berbeza.
Kod sampel berikut menggunakan Python 3.7.3. Ambil perhatian bahawa kata kunci (perkataan simpanan) mungkin berbeza bergantung pada versi.
Dapatkan senarai kata kunci Python (perkataan simpanan): keyword.kwlist
Kata kunci.kwlist mengandungi senarai kata kunci (perkataan simpanan) dalam Python.
Dalam contoh berikut, pprint digunakan untuk menjadikan output lebih mudah dibaca.
import keyword
import pprint
print(type(keyword.kwlist))
# <class 'list'>
print(len(keyword.kwlist))
# 35
pprint.pprint(keyword.kwlist, compact=True)
# ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break',
# 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for',
# 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not',
# 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
Unsur-unsur senarai adalah rentetan.
print(keyword.kwlist[0])
# False
print(type(keyword.kwlist[0]))
# <class 'str'>
Jika anda cuba menggunakan nama ini sebagai pengecam (nama pembolehubah, nama fungsi, nama kelas, dll.), anda akan mendapat ralat.
# True = 100
# SyntaxError: can't assign to keyword
Semak sama ada rentetan itu ialah kata kunci (perkataan simpanan): keyword.iskeyword()
Anda boleh menyemak sama ada rentetan ialah kata kunci (perkataan simpanan) dengan menggunakan keyword.iskeyword().
Apabila anda menentukan rentetan yang anda mahu semak sebagai hujah, ia mengembalikan benar jika ia adalah kata kunci dan palsu jika tidak.
print(keyword.iskeyword('None'))
# True
print(keyword.iskeyword('none'))
# False
Perbezaan antara kata kunci dan perkataan terpelihara
Walaupun kami telah menggunakannya tanpa membuat sebarang perbezaan, secara tegasnya, kata kunci dan perkataan terpelihara adalah dua konsep yang berbeza.
- Kata kunci: perkataan dengan makna khusus dalam spesifikasi bahasa
- Perkataan terpelihara: perkataan yang memenuhi peraturan untuk pengecam sebagai rentetan tetapi tidak boleh digunakan sebagai pengecam.
Lihat pautan berikut untuk butiran lanjut, termasuk contoh seperti goto ialah perkataan terpelihara tetapi bukan kata kunci dalam Java.
In a computer language, a reserved word (also known as a reserved identifier) is a word that cannot be used as an identifier, such as the name of a variable, function, or label – it is “reserved from use”. This is a syntactic definition, and a reserved word may have no user-define meaning.
Tanggapan yang berkait rapat dan sering bercantum ialah kata kunci, iaitu perkataan yang mempunyai makna istimewa dalam konteks tertentu. Ini adalah definisi semantik. Sebaliknya, nama dalam pustaka standard tetapi tidak dibina ke dalam bahasa tidak dianggap sebagai perkataan atau kata kunci simpanan. Istilah “perkataan terpelihara” dan “kata kunci” sering digunakan secara bergantian – seseorang mungkin mengatakan bahawa perkataan yang dikhaskan adalah “dikhaskan untuk digunakan sebagai kata kunci” – dan penggunaan formal berbeza dari satu bahasa ke bahasa; untuk artikel ini kami bezakan seperti di atas.
Reserved word – Wikipedia
Keywords have a special meaning in a language, and are part of the syntax.
Perkataan terpelihara ialah perkataan yang tidak boleh digunakan sebagai pengecam (pembolehubah, fungsi, dll.), kerana ia dikhaskan oleh bahasa.
language agnostic – What is the difference between “keyword” and “reserved word”? – Stack Overflow
Dalam Python (sekurang-kurangnya pada Python 3.7) semua kata kunci adalah perkataan yang dikhaskan dan tidak ada perkataan lain yang dikhaskan selain kata kunci, jadi selamat untuk menggunakannya tanpa membuat sebarang perbezaan.
Lihat juga artikel berikut untuk nama yang boleh digunakan sebagai pengecam.