Indentación en Pyhton
En Python, la indentación se utiliza para definir bloques de código y para determinar la estructura y la organización del programa. A diferencia de otros lenguajes de programación que utilizan llaves {}
o palabras clave como begin
y end
para delimitar bloques de código, Python utiliza la indentación como parte de su sintaxis. La indentación es una característica fundamental de Python y se usa para mostrar la estructura y la jerarquía en el código.
Aquí tienes algunos puntos clave sobre cómo funciona la indentación en Python:
- Bloques de código: En Python, los bloques de código se definen mediante la indentación, generalmente utilizando espacios o tabulaciones. Un bloque de código se inicia con una línea que termina en dos puntos
:
y todas las líneas subsecuentes con la misma cantidad de espacio/tabulación se consideran parte de ese bloque.Ejemplo:if condicion: # Esto está dentro del bloque del 'if' print("La condición es verdadera.") # Esto está fuera del bloque del 'if' print("Fuera del bloque del 'if'")
- Condiciones, bucles y funciones: Las estructuras de control como
if
,for
,while
y las definiciones de funciones se acompañan de bloques de código indentados.Ejemplo:for i in range(5): # Esto está dentro del bucle 'for' print(i) # Esto está fuera del bucle 'for'
- Consistencia: La consistencia en la indentación es crucial en Python. Debes usar la misma cantidad de espacios o tabulaciones en todo tu código para delimitar bloques de manera uniforme. Usualmente, se recomienda usar cuatro espacios como convención, pero lo más importante es que sea consistente.Ejemplo:
def funcion(): # Esto está dentro de la función 'funcion' if condicion: # Esto está dentro del bloque del 'if' dentro de la función print("La condición es verdadera.") # Esto está fuera de la función 'funcion'
- Errores por indentación: La incorrecta indentación puede causar errores de sintaxis en Python. Un error común es mezclar espacios y tabulaciones o usar una cantidad inconsistente de espacios/tabulaciones.
- No hay llaves: A diferencia de muchos otros lenguajes de programación, Python no utiliza llaves
{}
para definir bloques de código. Esto puede parecer extraño al principio, pero la indentación ayuda a que el código sea más legible y menos propenso a errores.
La indentación es una de las características distintivas de Python y es fundamental para escribir código legible y estructurado de manera clara. La mayoría de los editores y entornos de desarrollo de Python están configurados para facilitar la indentación correcta y ayudarte a evitar errores.
A diferencia de otros lenguajes que usan llaves {}
o palabras clave como begin
/end
, Python usa la indentación (espacios en blanco al inicio de una línea) para definir bloques de código.
✅ Ejemplo correcto
if True:
print("Esto está indentado correctamente")
print("Este también pertenece al bloque if")
print("Este ya está fuera del if")
🚫 Ejemplo incorrecto (genera error)
if True:
print("Esto dará error") # ❌ IndentationError
Python te dirá algo como:
IndentationError: expected an indented block
🔍 Reglas básicas
- Usa la misma cantidad de espacios por cada nivel de indentación (4 espacios).
- Puedes usar tabulaciones o espacios, pero no mezcles ambos.
- Cualquier bloque que siga una línea que termina con
:
(dos puntos) debe estar indentado.
🧪 Ejemplos con estructuras comunes
🔹 if
con indentación
x = 5
if x > 0:
print("Número positivo")
print("Mayor que cero")
else:
print("Número negativo o cero")
🔹 Funciones
def saludar(nombre):
print("Hola", nombre)
print("¡Bienvenido!")
saludar("Luis")
🔹 Bucles
for i in range(3):
print("Iteración:", i)
print("Dentro del bucle")
print("Fuera del bucle")
👨🏫 Buenas prácticas
- Lo recomendado es usar 4 espacios por nivel (Python lo sugiere como estándar).
- Configura tu editor de texto para que lo haga automáticamente (como VS Code, PyCharm, etc.).
- No mezcles tabs y espacios. Puede causar errores difíciles de detectar.
🔧 ¿Cómo saber si estás indentando mal?
- Si te sale un
IndentationError
ounexpected indent
, probablemente estás:- Usando espacios donde debería ir tab.
- No alineaste correctamente los bloques.
- Escribiste algo sin indentarlo después de
:
.