Sintaxis de Python
La sintaxis es el conjunto de reglas que definen cómo se escribe código válido en Python.
0.1 Motivación
La sintaxis es el conjunto de reglas que definen cómo se escribe código válido en Python. A diferencia de otros lenguajes donde la sintaxis es más permisiva, Python fue diseñado para ser legible y consistente. Entender la sintaxis desde el principio te ahorrará errores frustrantes y hará que tu código sea más claro para otros (y para ti mismo cuando lo releas).
0.2 Intuición
Piensa en la sintaxis de Python como las reglas gramaticales de un idioma. En español, “El perro come” es válido; “Perro el come” suena mal. En Python, la indentación es como la puntuación: no es opcional, es parte de la gramática. Si olvidas los espacios, Python no entiende dónde termina un bloque y empieza otro, igual que si escribieras una oración sin puntos.
0.3 Modelo mental
La sintaxis de Python se basa en tres pilares fundamentales:
Indentación como estructura: en lugar de llaves (
{}) o palabras clave (begin/end), Python usa espacios para agrupar código. Esto obliga a escribir código limpio y legible.Instrucciones línea por línea: cada línea suele ser una instrucción completa. No necesitas punto y coma (
;) al final.Comentarios documentan, no ejecutan: todo lo que escribas después de
#es ignorado por Python. Son para ti y para otros humanos.
0.4 Desarrollo
0.4.1 1. Indentación: la regla de oro
En Python, la indentación define bloques de código. Esto aplica a:
- Condicionales (
if,elif,else) - Bucles (
for,while) - Funciones (
def) - Clases (
class)
if 5 > 2:
print("Cinco es mayor que dos") # Esta línea está indentada
print("Esto también pertenece al if")
print("Esto ya está fuera del if") # Sin indentación = fuera del bloqueReglas de indentación:
- Debe haber al menos un espacio o un tabulador.
- El número de espacios debe ser consistente dentro del mismo bloque.
- La convención más común es 4 espacios (recomendado por PEP 8).
0.4.2 2. Variables: creación sin declaración
En Python, no declaras variables. Se crean cuando les asignas un valor:
nombre = "Ana" # Variable de texto (str)
edad = 25 # Variable numérica (int)
precio = 99.99 # Variable decimal (float)
es_valido = True # Variable booleana (bool)Python infiere el tipo automáticamente. Las variables pueden cambiar de tipo durante la ejecución (tipado dinámico).
0.4.3 3. Comentarios: documenta tu código
Los comentarios son líneas que Python ignora completamente. Sirven para explicar qué hace tu código:
# Esto es un comentario de una línea
print("Hola") # También puedes poner comentarios al final de una línea
# Los comentarios son útiles para:
# - Explicar lógica compleja
# - Desactivar temporalmente código
# - Dejar notas para ti mismo o para otros0.4.4 4. Convenciones de sintaxis (PEP 8)
- Sensibilidad a mayúsculas:
miVariableymivariableson diferentes. - Nombres en minúsculas con guiones bajos:
nombre_usuario(nonombreUsuario). - Constantes en mayúsculas:
MAXIMO = 100. - Una línea en blanco entre funciones y clases para legibilidad.
0.5 Ejemplos
Mínimo — Un programa que combina sintaxis válida:
# Calcular descuento simple
precio = 100
descuento = 20
precio_final = precio - descuento
print("Precio final:", precio_final)
# Salida: Precio final: 80Progresivo — Indentación y bloques correctos vs incorrectos:
# ✅ CORRECTO - mismo número de espacios (4)
if 10 > 5:
print("Diez es mayor")
print("Este mensaje también está dentro del if")
# ❌ INCORRECTO - indentación inconsistente
if 10 > 5:
print("Diez es mayor")
print("Este mensaje tiene 2 espacios") # Error: indentación inconsistenteReal — Un script que usa sintaxis básica con comentarios:
# config.py - Configuración simple de usuario
nombre = input("¿Cómo te llamas? ") # Captura entrada del usuario
print(f"Hola, {nombre}") # f-string: formatea cadenas
# Ejecución condicional
if nombre == "admin":
print("Modo administrador activado")
print("Tienes acceso completo")
else:
print("Modo usuario")
print("Acceso limitado")0.6 Errores comunes
| Error | Síntoma | Cómo detectarlo |
|---|---|---|
| Indentación faltante | IndentationError: expected an indented block |
Busca la línea marcada; debe tener espacios antes del código |
| Indentación inconsistente | IndentationError: unindent does not match any outer indentation level |
Usa espacios o tabs, pero NO mezcles ambos |
Confundir = con == |
La variable se reasigna en lugar de comparar | Revisa condicionales: = es asignación, == es comparación |
| Olvidar cerrar paréntesis/comillas | SyntaxError: unexpected EOF while parsing |
Cuenta paréntesis y comillas; deben abrirse y cerrarse |
| Espacios en nombres de variables | SyntaxError: invalid syntax |
Las variables no pueden tener espacios: mi nombre → mi_nombre |
0.7 Buenas prácticas
- Usa 4 espacios para indentar (configura tu editor para que TAB inserte 4 espacios).
- Comenta el “por qué”, no el “qué”: el código ya dice qué hace.
- Nombra variables de forma descriptiva:
precio_con_descuentoen lugar depcd. - No uses palabras reservadas como variables (
print,if,while,class). - Agrupa lógica relacionada con líneas en blanco para separar secciones.
0.8 Ejercicio
Básico — Corrección de errores
El siguiente código tiene 4 errores de sintaxis. Encuéntralos y corrígelos:
# calculadora simple
numero1 = 10
numero2 = 5
suma = numero1 + numero2
print("La suma es", suma)
if suma > 10:
print("La suma es mayor que 10")
resta = numero1 - numero2
print("La resta es", resta)
print("Fin del programa")Pista: busca problemas de indentación y nombres mal escritos.
Solución (no mires hasta haberlo intentado):
# calculadora simple
numero1 = 10
numero2 = 5
suma = numero1 + numero2
print("La suma es", suma)
if suma > 10:
print("La suma es mayor que 10") # Faltaba indentación
resta = numero1 - numero2
print("La resta es", resta)
print("Fin del programa") # La indentación extra no es necesaria0.9 Síntesis
- Indentación = bloques de código: esencial, no opcional (4 espacios por convención).
- Variables se crean al asignar: no necesitan declaración previa.
- Comentarios con
#: documentan, no ejecutan. - Sintaxis sensible a mayúsculas:
Variable≠variable. - Usa PEP 8: guía de estilo para código limpio y consistente.
0.10 Qué sigue
- Relacionado: variables y tipos de datos (manejo de texto, números, booleanos)
- Siguiente tema: Variables y tipos de datos — aprenderás a almacenar y manipular información con distintos tipos de datos en Python.
Cómo citar
Achalma, E. (2026, 20 de octubre). Sintaxis de Python. Numerus Scriptum. https://numerus-scriptum.netlify.app/cursos/python/sintaxis-de-python/