Qué significa IndentationError y cómo solucionarlo
Referencia del error
IndentationError
Lenguaje
Severidad
AltaCuándo ocurre
Un IndentationError es una forma específica de SyntaxError que Python lanza cuando la indentación de un bloque de código no sigue el patrón esperado.
Posibles soluciones
Configura tu editor para usar solo espacios (4 espacios por nivel de indentación es la convención de Python). Activa 'mostrar espacios en blanco' en tu editor para detectar tabulaciones y espacios mezclados. Ejecuta tu linter o formateador (como ruff o black) para corregir la indentación automáticamente.
Errores relacionados
Más detalles
Un IndentationError es una forma específica de SyntaxError que Python lanza cuando la indentación de un bloque de código no sigue el patrón esperado. Python usa la indentación para definir bloques de código, por lo que espacios o tabulaciones inconsistentes causan este error.
Por qué ocurre
- •Mezclar tabulaciones y espacios para indentar en el mismo archivo.
- •Usar una cantidad diferente de espacios para una línea que debería estar al mismo nivel.
- •Agregar o eliminar un espacio accidentalmente al editar código.
- •Copiar código de otra fuente que usa un estilo de indentación diferente.
Posibles soluciones
Configura tu editor para usar solo espacios (4 espacios por nivel de indentación es la convención de Python). Activa 'mostrar espacios en blanco' en tu editor para detectar tabulaciones y espacios mezclados. Ejecuta tu linter o formateador (como ruff o black) para corregir la indentación automáticamente.
Ejemplos
Código que causa el error
def calculate(x):
result = x * 2
return resultError en la terminal
File "app.py", line 3
return result
IndentationError: unindent does not match any outer indentation levelCódigo corregido
def calculate(x):
result = x * 2
return result
print(calculate(5)) # 10Practica en inglés
¿Cómo le explicarías un IndentationError a un compañero dev? Elige la frase correcta:
"I hit an error...
¿Listo para practicar tu inglés en el trabajo?
Lingua-e tiene ejercicios interactivos basados en conversaciones reales de developers: standups, code reviews, retrospectivas y más. Practica hasta que salga solo.
Prueba Lingua-e gratis