Solucionado el TabError
Una de las cosas más molestas (pero gracias a la misma tenemos tantos memes de Python) de Python es el error de:
TabError: inconsistent use of tabs and spaces in indentation
No podemos poner una tabulación extra, o una tabulación menos, porque el intérprete se está quejando.
Una posible explicación a esto es que copiamos y pegamos código de otro lugar en donde se usan espacios o tabulaciones intercambiadas o en un número distinto.
Esto no pasa con otro lenguaje, que yo sepa; pero bueno, vamos a ver dos soluciones para que ya no se genere este error y Python nos deje seguir programando.
Nota: abajo expongo otra solución con un comando, el cual además podrá formatear nuestro código.
Para esto necesitas un editor (y si no, en qué programas? en la calculadora de Windows?) decente que pueda buscar y remplazar; un IDE también funciona bien.
En pocas palabras tienes que buscar todas las tabulaciones, para ello, en la búsqueda activa la búsqueda por expresión regular y coloca \t
en el cuadro.
El remplazo será cuatro espacios por tabulación, así que en el cuadro de remplazo coloca “
“.
Nota: esto lo tienes que hacer con todos los archivos, muchos editores ya tienen la opción de “Remplazar en archivos”
Yo lo haré con VSCode así que voy a Edit > Replace in files, busco, pongo el remplazo, presiono Enter y se muestran los archivos que coinciden:
Fíjate que está activa la opción de expresión regular en donde está el .*
.
Después hay que confirmar:
Y el error de TabError ya no existe:
Un ejecutable que permite arreglar este tipo de errores y además formatear nuestro código es autopep8.
Para instalarlo debes tener Python y PIP, y luego ejecutar:
pip install autopep8
Cuando se haya instalado, el ejecutable autopep8
estará disponible.
Para formatear un archivo simplemente ejecuta:
autopep8 -i nombre_archivo.py
La opción -i
es para que modifique el archivo directamente.
La documentación de autopep8 está aquí.
Tip: para arreglar el error en todos los archivos ejecuta:
autopep8 -i -r .
(o autopep8 -ir .
)
La opción -i
es para que modifique el archivo, y la opción -r
para que sea recursivo. El punto al final indica el directorio actual 😉
Finalmente, si tú usas VSCode y te da este error puedes presionar F1
o Ctrl + Shift + p y buscar “Convert indentation” (O convertir sangría si lo tienes en español).
Eso te dará dos resultados: convertir indentación a tabulaciones, o espacios. Elige la que más te convenga, yo siempre elijo los espacios.
Y así no necesitarás ningún comando extra; solo tu editor.
En este post te quiero compartir un código de C++ para listar y cancelar trabajos…
Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web…
Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré…
Esta semana estuve recreando la API del plugin para impresoras térmicas en Android (HTTP a…
Hoy te enseñaré a extraer la cadena base64 de una clave PEM usando una función…
Encender un foco con un Bot de Telegram es posible usando una tarjeta como la…
Esta web usa cookies.
Ver comentarios
Gracias, por fin resolví el problema