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í.

Si el post ha sido de tu agrado te invito a que me sigas para saber cuando haya escrito un nuevo post, haya actualizado algún sistema o publicado un nuevo software. Facebook | X | Instagram | Telegram | También estoy a tus órdenes para cualquier contratación en mi página de contacto