Es pot trobar una llista de paraules clau de Python (paraules reservades) al mòdul de paraules clau de la biblioteca estàndard.
Les paraules clau (paraules reservades) no es poden utilitzar com a noms (identificadors) per a noms de variables, noms de funcions, noms de classe, etc.
- Articles relacionats:Noms vàlids i no vàlids i convencions de denominació per als identificadors (per exemple, noms de variables) a Python
Aquí es proporciona la informació següent.
- Obteniu una llista de paraules clau de Python (paraules reservades):
keyword.kwlist
- Comproveu si la cadena és una paraula clau (paraula reservada):
keyword.iskeyword()
- La diferència entre paraules clau i paraules reservades
Com s’ha esmentat a la darrera secció, les paraules clau i les paraules reservades són conceptes estrictament diferents.
El codi d’exemple següent utilitza Python 3.7.3. Tingueu en compte que les paraules clau (paraules reservades) poden variar segons la versió.
Obteniu una llista de paraules clau de Python (paraules reservades): keyword.kwlist
El keyword.kwlist conté una llista de paraules clau (paraules reservades) en Python.
En l’exemple següent, pprint s’utilitza per facilitar la lectura de la sortida.
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']
Els elements de la llista són cadenes.
print(keyword.kwlist[0])
# False
print(type(keyword.kwlist[0]))
# <class 'str'>
Si intenteu utilitzar aquests noms com a identificadors (noms de variables, noms de funcions, noms de classe, etc.), obtindreu un error.
# True = 100
# SyntaxError: can't assign to keyword
Comproveu si la cadena és una paraula clau (paraula reservada): keyword.iskeyword()
Podeu comprovar si una cadena és una paraula clau (paraula reservada) utilitzant keyword.iskeyword().
Quan especifiqueu la cadena que voleu comprovar com a argument, retorna true si és una paraula clau i false si no ho és.
print(keyword.iskeyword('None'))
# True
print(keyword.iskeyword('none'))
# False
La diferència entre paraules clau i paraules reservades
Tot i que les hem estat utilitzant sense fer cap distinció, en sentit estricte, paraules clau i paraules reservades són dos conceptes diferents.
- Paraules clau: paraules amb significat especial en l’especificació de la llengua
- Paraules reservades: paraules que compleixen les regles dels identificadors com a cadenes però que no es poden utilitzar com a identificadors.
Consulteu els enllaços següents per obtenir més detalls, inclosos exemples com ara goto és una paraula reservada però no una paraula clau a 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.
Una noció estretament relacionada i sovint combinada és una paraula clau, que és una paraula amb un significat especial en un context determinat. Aquesta és una definició semàntica. Per contra, els noms d’una biblioteca estàndard però no integrats en l’idioma no es consideren paraules reservades o paraules clau. Els termes “paraula reservada” i “paraula clau” s’utilitzen sovint de manera intercanviable; es pot dir que una paraula reservada està “reservada per utilitzar-la com a paraula clau” – i l’ús formal varia d’una llengua a una altra; per a aquest article distingim com a anterior.
Reserved word – Wikipedia
Keywords have a special meaning in a language, and are part of the syntax.
Les paraules reservades són paraules que no es poden utilitzar com a identificadors (variables, funcions, etc.), perquè estan reservades per la llengua.
language agnostic – What is the difference between “keyword” and “reserved word”? – Stack Overflow
A Python (almenys a partir de Python 3.7) totes les paraules clau són paraules reservades i no hi ha altres paraules reservades a part de les paraules clau, de manera que és segur utilitzar-les sense fer cap distinció.
Consulteu també l’article següent per als noms que es poden utilitzar com a identificadors.