Para ver una lista de palabras clave de Python (palabras reservadas), utilice la palabra clave

Negocio

Puede encontrar una lista de palabras clave de Python (palabras reservadas) en el módulo de palabras clave de la biblioteca estándar.

Las palabras clave (palabras reservadas) no pueden utilizarse como nombres (identificadores) para nombres de variables, nombres de funciones, nombres de clases, etc.

La siguiente información se proporciona aquí.

  • Obtener una lista de palabras clave de Python (palabras reservadas):keyword.kwlist
  • Comprueba si la cadena es una palabra clave (palabra reservada):keyword.iskeyword()
  • La diferencia entre palabras clave y palabras reservadas

Como se ha mencionado en la última sección, las palabras clave y las palabras reservadas son conceptos estrictamente diferentes.

El siguiente código de ejemplo utiliza Python 3.7.3. Tenga en cuenta que las palabras clave (palabras reservadas) pueden variar según la versión.

Obtener una lista de palabras clave de Python (palabras reservadas): keyword.kwlist

El archivo keyword.kwlist contiene una lista de palabras clave (palabras reservadas) en Python.

En el siguiente ejemplo, se utiliza pprint para que la salida sea más fácil de leer.

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']

Los elementos de la lista son cadenas.

print(keyword.kwlist[0])
# False

print(type(keyword.kwlist[0]))
# <class 'str'>

Si intenta utilizar estos nombres como identificadores (nombres de variables, nombres de funciones, nombres de clases, etc.), obtendrá un error.

# True = 100
# SyntaxError: can't assign to keyword

Comprobar si la cadena es una palabra clave (palabra reservada): keyword.iskeyword()

Puede comprobar si una cadena es una palabra clave (palabra reservada) utilizando keyword.iskeyword().

Cuando se especifica la cadena que se quiere comprobar como argumento, devuelve true si es una palabra clave, y false si no lo es.

print(keyword.iskeyword('None'))
# True

print(keyword.iskeyword('none'))
# False

La diferencia entre palabras clave y palabras reservadas

Aunque las hemos utilizado sin hacer ninguna distinción, estrictamente hablando, las palabras clave y las palabras reservadas son dos conceptos diferentes.

  • Palabras clave: palabras con un significado especial en la especificación lingüística
  • Palabras reservadas: palabras que cumplen las reglas de los identificadores como cadenas pero que no pueden utilizarse como identificadores.

Consulte los siguientes enlaces para obtener más detalles, incluyendo ejemplos como que goto es una palabra reservada pero no una palabra clave en 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.
A closely related and often conflated notion is a keyword, which is a word with special meaning in a particular context. This is a semantic definition. By contrast, names in a standard library but not built into the language are not considered reserved words or keywords. The terms «reserved word» and «keyword» are often used interchangeably – one may say that a reserved word is «reserved for use as a keyword» – and formal use varies from language to language; for this article we distinguish as above.
Reserved word – Wikipedia

Keywords have a special meaning in a language, and are part of the syntax.
Reserved words are words that cannot be used as identifiers (variables, functions, etc.), because they are reserved by the language.
language agnostic – What is the difference between «keyword» and «reserved word»? – Stack Overflow

En Python (al menos a partir de Python 3.7) todas las palabras clave son palabras reservadas y no hay otras palabras reservadas además de las palabras clave, por lo que es seguro utilizarlas sin hacer ninguna distinción.

Véase también el siguiente artículo sobre los nombres que pueden utilizarse como identificadores.

Copied title and URL