error de sangría en python

Funciones y métodos de Python

IndentationErrors tienen dos propósitos: ayudan a que su código sea más legible y garantizan que el intérprete de Python comprenda correctamente su código. Si agrega un espacio o pestaña adicional donde no es necesario, encontrará un & ldquo; IndentationError: sangría inesperada & rdquo; error.

En esta guía, discutimos qué significa este error y por qué se genera. Veremos un ejemplo de este error para que pueda averiguar cómo solucionarlo en su programa.




IndentationError: sangría inesperada

Una sangría es un número específico de espacios o pestañas que denotan que una línea de código es parte de un bloque de código en particular. Considere el siguiente programa:

 def hello_world (): print ("¡Hola, mundo!") 

Hemos definido una única función: hello_world () . Esta función contiene una declaración de impresión. Para indicarle a Python que esta línea de código es parte de nuestra función, la hemos sangrado.

Puede sangrar el código usando espacios o tabulaciones, según sus preferencias. Solo debe aplicar sangría al código si ese código debe ser parte de otro bloque de código. Esto incluye cuando escribe código en:

El código Python debe tener una sangría consistente si aparece en una declaración especial. Python aplica la sangría estrictamente.

Algunos lenguajes de programación como JavaScript no aplican la sangría estrictamente porque usan llaves para indicar bloques de código. Python no tiene esta función, por lo que el lenguaje depende en gran medida de la sangría.

La causa del & ldquo; IndentationError: sangría inesperada & rdquo; El error es sangrar demasiado su código o usar demasiadas pestañas y espacios para sangrar una línea de código.

El 81% de los participantes afirmó que se sentía más seguro acerca de sus perspectivas de trabajo técnico después de asistir a un campamento de entrenamiento. . Asóciese a un bootcamp hoy mismo.

El graduado promedio de un bootcamp pasó menos de seis meses en la transición de carrera, desde comenzar un bootcamp hasta encontrar su primer trabajo.

Los otros errores de sangría que puede encuentro son:




Un escenario de ejemplo

Vamos a crear un programa que recorra una lista de compras que ha realizado un usuario e imprima todas las que están más de $ 25.00 para la consola.

Para comenzar, definamos una lista de compras:

 compras = [25.50, 29.90, 2.40, 57.60, 24.90, 1.55] 

A continuación, definimos una función para recorrer nuestra lista de compras e imprimir las vale más de $ 25 para la consola:

 def show_high_purchases (pur persecuciones): para p en compras: si p & gt; 25.00: print ("Compra:") print (p) 

La función show_high_purchases () acepta un argumento: la lista de compras a través de las cuales la función buscará . La función itera a través de esta lista y usa una declaración if para verificar si cada compra vale más de $ 25.00.

Si una compra es mayor de $ 25.00, la declaración Purchase: se imprime en la consola. Luego, el precio de esa compra se imprime en la consola. De lo contrario, no pasa nada.

Antes de ejecutar nuestro código, llame a nuestra función y pase nuestra lista de compras como parámetro:

Ejecutemos nuestro código y vea qué sucede:

 Archivo "main.py", línea 7 print (p) ^ IndentationError: sangría inesperada 

Nuestro código no se ejecuta correctamente.




La solución

Al igual que con cualquier error de Python, deberíamos leer el error completo mensaje para ver qué está pasando. El problema parece estar en la línea 7, que es donde imprimimos el valor de una compra.

 si p & gt; 25.00: print ("Compra:") print (p) 

Incidentalmente hemos sangrado la segunda instrucción print () . Esto causa un error porque nuestra segunda instrucción print () no es parte de otro bloque de código. Sigue siendo parte de nuestra declaración if .


< / a>

Para solucionar este error, debemos asegurarnos de aplicar sangría a todas nuestras declaraciones print () :

 if p & gt; 25.00: print (" Compra: ") print (p) 

Ambos Las sentencias print () deben usar el mismo nivel de sangría porque son parte de la misma sentencia if . Hemos realizado esta revisión anteriormente.

Intentemos ejecutar nuestro código:

 Compra: 25,5 Compra: 29,9 Compra: 57,6 

Nuestro código imprime con éxito todas las compras por valor de más de $ 25.00 en la consola.




Conclusión

& ldquo; IndentationError: sangría inesperada & rdquo; es cuando se aplica una sangría a una línea de código demasiadas veces. Si tiene este error, asegúrese de que todo su código utilice una sangría consistente y que no haya sangrías innecesarias.

¡Ahora está listo para corregir este error como un experto en Python!





error de sangría en python: StackOverflow Questions

Tutorials