Python unindent no coincide

Sangrar su còdigo puede ser un asunto complicado si intenta utilizar tanto espacios como tabulaciones. En Python, el uso de ambos métodos de sangrìa da como resultado un error. Este error es " error de sangrìa: unindent no coincide con ning√∫n nivel de sangrìa exterior & rdquo ;.

En esta guìa, hablamos sobre lo que significa este error y cuándo se genera. Analizamos un ejemplo de este error en acciòn para ayudarlo a aprender còmo solucionarlo.

error de sangrìa: unindent no coincide con ning√∫n nivel de sangrìa exterior

còdigo Python se puede sangrar con tabulaciones o espacios. Depende de usted.

Python solo tiene una objeciòn cuando usa espacios y pesta√±as para sangrar su còdigo. Python requiere que use solo un método de sangrìa. Esto se debe a que el idioma está escrito de forma estática. Los lenguajes de programaciòn tipados estáticamente son rigurosos cuando se trata de sintaxis. & Nbsp;

Los errores de sangrìa son difìciles de entender porque involucran lo invisible: mezclar espacios y tabulaciones. Dependiendo del editor de còdigo que esté usando, es posible que ni siquiera pueda ver si se han usado espacios o tabulaciones hasta que elimine las sangrìas de su còdigo.

Los errores de sangrìa son comunes cuando copia còdigo fragmentos de Internet. Cada desarrollador tiene sus propias preferencias cuando se trata de sangrìa y, a menudo, encontrará fragmentos de còdigo que no se ajustan a sus propias preferencias. Algunos fragmentos se sangrarán con espacios.

Si un fragmento de còdigo que copia en su programa utiliza un tipo de sangrìa diferente, es posible que vea un error de sangrìa en su còdigo. Esto se debe a que mezcla tabulaciones y espacios.

Un escenario de ejemplo

Escriba un programa que encuentre los factores de un n√∫mero.

El 81% de los participantes declarò se sintieron más seguros acerca de sus perspectivas laborales de tecnologìa después de asistir a un bootcamp. Asigne a un bootcamp hoy mismo.

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

Comience por definir una funciòn para calcular los factores de un n√∫mero:

Esta funciòn utiliza un bucle for para recorrer en iteraciòn cada n√∫mero en el rango de 1 y el n√∫mero que hemos especificado más 1.

En cada iteraciòn, nuestro programa comprueba si queda un resto después de dividir " n√∫mero " por " i & rdquo ;. Hacemos esto usando el operador de mòdulo . Si no hay un resto, " i " es un factor de "n√∫mero".

Si un n√∫mero es un factor de "n√∫mero", se imprime un mensaje en la consola.

Nosotros para llamar a nuestra funciòn:

Este còdigo calcula todos los factores de 32. Ejecute nuestro còdigo y vea qué sucede:

Nuestro còdigo devuelve un IndentationError .

Hemos cometido un error con el estilo de nuestro còdigo. Sabemos esto porque los errores de sangrìa se generan cuando hay un problema con la sangrìa de su còdigo.

Eche un vistazo al estilo de nuestro còdigo. En Sublime Text, podemos ver los estilos de nuestro còdigo colocando el cursor sobre cada lìnea:

zkT2zfCE1h22 Ldf RwNqSrZL9fUBLG vdcBcqh559l QY6dDanxnhIiihRf52m10qUKnPgFyT2uG6YxVF5MoRzAVitrOwbnF 04EUYhdD3dMZZXkO3aOERWcZYtYsJpOFu1rqun

Cada lìnea representa una ficha. Cada punto representa un espacio. Puede ver que hemos mezclado espacios y pesta√±as en nuestro fragmento de còdigo. A Python le gusta la coherencia en las sangrìas y, por lo tanto, el intérprete devuelve un error cuando ejecutamos nuestro còdigo.

Si usa un editor de texto que no admite este comportamiento, verifique si su còdigo usa espacios o tabulaciones por retrocediendo su sangrìa. Si su còdigo elimina una pesta√±a cuando presiona la tecla de retroceso, esa parte de su còdigo está usando pesta√±as.

Los espacios son preferidos método de sangrìa en Python pero puede usar pesta√±as si lo desea.

Revisemos nuestro còdigo:

Hemos reemplazado todos los espacios con tabulaciones. Ejecute nuestro programa nuevamente:

Nuestro còdigo devuelve con éxito una lista de todos los factores de 32. Esto nos muestra que nuestro còdigo era lògicamente preciso todo ong. Fue nuestra sangrìa la que causò el problema.

Conclusiòn

El " error de sangrìa: unindent no coincide con ning√∫n nivel de sangrìa exterior " se genera un error cuando usa espacios y tabulaciones para sangrar su còdigo.

Para resolver este error, verifique que todo su còdigo use espacios o tabulaciones en un programa. Ahora estás listo para resolver este error com√∫n de Python como desarrollador de software profesional !