Python Palabras reservadas
Las palabras reservadas de Python (también llamadas palabras clave) son palabras con un significado especial en el lenguaje Python, reservadas por el intérprete de Python para funciones sintácticas específicas. Estas palabras reservadas no pueden usarse como nombres de variables, nombres de funciones u otros identificadores.
Características
- Inmutabilidad: las palabras reservadas forman parte de la especificación del lenguaje y no se puede modificar su significado
- Número limitado: el número de palabras reservadas de Python es fijo (Python 3.8 tiene 35 palabras reservadas)
- Sensible a mayúsculas y minúsculas: todas las palabras reservadas están en minúsculas
- Función sintáctica: cada palabra reservada tiene un rol sintáctico específico
Ver todas las palabras reservadas
Puedes usar el módulokeywordde Python para ver todas las palabras reservadas de la versión actual:
Ejemplo
print(keyword.kwlist)
En Python 3.8, el resultado es:
['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']
Clasificación y usos de las palabras reservadas
Las palabras reservadas de Python se pueden clasificar en las siguientes categorías según su función:
1. Palabras reservadas de valores
Estas palabras reservadas representan valores específicos:
| Palabra reservada | Descripción | Ejemplo |
|---|---|---|
True |
Valor booleano verdadero | flag = True |
False |
Valor booleano falso | flag = False |
None |
Representa un valor nulo o sin valor | result = None |
2. Palabras reservadas de operadores
Se usan para operaciones lógicas y booleanas:
| Palabra reservada | Descripción | Ejemplo |
|---|---|---|
and |
Y lógico | if x > 0 and x < 10: |
or |
O lógico | if x < 0 or x > 100: |
not |
Negación lógica | if not is_valid: |
is |
Comparación de identidad de objetos | if x is None: |
in |
Prueba de pertenencia | if 'a' in 'apple': |
3. Palabras reservadas de flujo de control
Controlan el flujo de ejecución del programa:
| Palabra reservada | Descripción | Ejemplo |
|---|---|---|
if |
Sentencia condicional | if x > 0: print("Positive") |
elif |
Si no, si | elif x == 0: print("Zero") |
else |
De lo contrario | else: print("Negative") |
for |
Sentencia de bucle | for i in range(5): |
while |
Sentencia de bucle | while x > 0: |
break |
Salir del bucle | break |
continue |
Continuar con la siguiente iteración del bucle | continue |
4. Palabras reservadas relacionadas con funciones y clases
Se usan para definir y manipular funciones y clases:
| Palabra reservada | Descripción | Ejemplo |
|---|---|---|
def |
Definir función | def my_func(): |
return |
Valor de retorno de función | return x + y |
lambda |
Función anónima | f = lambda x: x**2 |
class |
Definir clase | class MyClass: |
pass |
Marcador de sentencia vacía | pass |
5. Palabras reservadas de manejo de excepciones
Manejan excepciones en el programa:
| Palabra reservada | Descripción | Ejemplo |
|---|---|---|
try |
Intentar ejecutar un bloque de código | try: |
except |
Capturar excepción | except ValueError: |
finally |
Ejecutar independientemente de si hay excepción | finally: |
raise |
Lanzar excepción | raise ValueError("Invalid") |
6. Palabras reservadas de importación y módulos
Gestionan módulos e importaciones:
| Palabra reservada | Descripción | Ejemplo |
|---|---|---|
import |
Importar módulo | import math |
from |
Importar contenido específico de un módulo | from math import sqrt |
as |
Alias | import numpy as np |
7. Palabras reservadas de ámbito de variables
Controlan el ámbito de las variables:
| Palabra reservada | Descripción | Ejemplo |
|---|---|---|
global |
Declarar variable global | global count |
nonlocal |
Declarar variable no local | nonlocal x |
8. Palabras reservadas de programación asíncrona
(Nuevas en Python 3.5+):
| Palabra reservada | Descripción | Ejemplo |
|---|---|---|
async |
Definir función asíncrona | async def fetch(): |
await |
Esperar a que se complete una operación asíncrona | await response |
9. Otras palabras reservadas
| Palabra reservada | Descripción | Ejemplo |
|---|---|---|
del |
Eliminar referencia | del my_list[0] |
with |
Gestión de contexto | with open('file') as f: |
yield |
Valor de retorno de generador | yield x |
assert |
Afirmar que una condición es verdadera | assert x > 0 |
Uso correcto de las palabras reservadas
1. No pueden usarse como identificadores
Intentar usar una palabra reservada como nombre de variable causa un error de sintaxis:
Ejemplo
class = "Computer Science" # SyntaxError
2. Prestar atención a mayúsculas y minúsculas
Las palabras reservadas de Python están en minúsculas, pero palabras con distinta capitalización pueden usarse como identificadores:
Ejemplo
Class = "Math" # No es una palabra reservada
3. Corrección del contexto
Cada palabra reservada tiene un contexto de uso específico; un uso incorrecto provoca un error de sintaxis:
Ejemplo
def = 5 # SyntaxError
4. Uso combinado
Muchas palabras reservadas necesitan usarse combinadas para cumplir su función completa:
Ejemplo
if x > 0:
print("Positive")
elif x == 0:
print("Zero")
else:
print("Negative")
Ejemplos de aplicación práctica
Ejemplo 1: Aplicación de palabras reservadas de flujo de control
Ejemplo
score = 85
if score >= 90:
grade = 'A'
elif score >= 80:
grade = 'B'
elif score >= 70:
grade = 'C'
else:
grade = 'D'
print(f"Nivel de calificación: {grade}")
Ejemplo 2: Funciones y manejo de excepciones
Ejemplo
import math
def safe_sqrt(x):
try:
result = math.sqrt(x)
except ValueError:
print("No se puede calcular la raíz cuadrada de un número negativo")
result = None
finally:
print("Cálculo completado")
return result
print(safe_sqrt(4)) # 2.0
print(safe_sqrt(-1)) # No se puede calcular la raíz cuadrada de un número negativo\nNone
Ejemplo 3: Administrador de contexto
Ejemplo
with open('example.txt', 'w') as f:
f.write("Hello, Python Keywords!")
# El archivo se cierra automáticamente, sin necesidad de llamar manualmente a f.close()
Errores comunes y precauciones
1. Uso incorrecto de una palabra reservada como nombre de variable
Ejemplo
from = "Beijing"
# Correcto
origin = "Beijing"
2. Olvidar los dos puntos
Ejemplo
if x > 0
print("Positive")
# Correcto
if x > 0:
print("Positive")
3. Estructura de control incompleta
Ejemplo
if x > 0:
elif x == 0:
# Correcto
if x > 0:
pass
elif x == 0:
pass
4. Sangría incorrecta
Ejemplo
if x > 0:
print("Positive") # Falta sangría
# Correcto
if x > 0:
print("Positive")
5. Diferencias entre versiones
- Python 2.x tiene print y exec como palabras reservadas
- En Python 3.x, print y exec son funciones integradas, ya no son palabras reservadas
- async y await son palabras reservadas nuevas en Python 3.5+
Sintaxis básica de Python 3