¿Qué significa error “IndentationError: expected an indented block”

Ultima actualización en domingo 13º mar. 2022

indentationerror: expected an indented block

El uso de sangría de Python hace que el código sea muy fácil de leer. Básicamente, utiliza espacios en blanco para obligarlo a escribir código cuidadosamente formateado con una estructura visual clara.

	def value(uno,dos):
if uno < dos:
return dos
else:
return uno
	

Python no tiene llaves { }, por lo que de alguna manera debe saber dónde comienza y termina el bloque, con sangría aquí.

Si intenta ejecutar el código siguiente anterior, arroja el siguiente error

expected an indented block

	IndentationError: expected an indented block
	

Si está dentro de otra (función, bucle, if statement, etc.), debe ser sangrada por 4 espacios (o una pestaña clave), no más ni menos.

	def value(uno,dos):
    if uno < dos: 
        return dos
    else:
        return uno
	

Recuerda siempre sangría, ¡esta es la esencia de Python!

Si accidentalmente sangría una línea que no necesita ser sangría, Python le informará sobre la sangría inesperada.

	mess = "Hola mundo"
   print(mess)
	

No necesitamos sangría de la llamada ‘print()’, porque no forma parte de un
bucle. Por lo tanto, Python informa de ese error.

	  print(mess)
  ^
IndentationError: unexpected indent