Python – Trabajo con archivos en UTF-8

Hace un momento estaba trabajando en un script de Python 3 en donde se lee y escribe cierto texto, solo que ocurrió un problema cuando dentro del contenido del archivo se encontraba una ñ.

Por lo tanto en este post te enseñaré cómo leer y escribir archivos de texto codificados como UTF-8 para que soporte los caracteres especiales como la ñ, acentos, etcétera; casi todo lo que conforma el idioma español.

Para ello simplemente vamos a indicar el encoding al abrir los archivos.

Archivos en Python codificados en UTF-8

Como lo dije, si hablas español (o bueno, tienes contenido en idioma español en un archivo) o quieres trabajar con esta codificación en general, simplemente indica encoding="utf-8" al abrir el archivo, ya sea para escritura o lectura.

# Especificar al abrir para leer
with open("archivo.txt", encoding="utf-8") as archivo:
    # Y al abrir para escribir
    with open("salida.txt", "w", encoding="utf-8") as a:
        for linea in archivo:
            print(linea)
            a.write(linea)

Tengo este ejemplo que lee el contenido del siguiente archivo:

ñññññ

Y lo escribe en otro además de imprimir el contenido. El archivo de salida es:

ñññññ

De este modo es como podemos leer y escribir archivos en Python usando la codificación UTF-8. Puedes leer más sobre Python aquí.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *