Ficheros

En construcciónEsta leccion está en elaboración

Python puede leer y escribir ficheros de texto o binarios.

Trabajar con ficheros: with ... as

Las palabras reservadas with y as se introdujeron en Python 2.6 (aunque estaban disponibles en Python 2.5 en el módulo __future__) para facilitar, entre otros, la forma de trabajar con ficheros .

Su sintaxis general es la siguiente:

with EXPRESION as VARIABLE:
    BLOQUE DE INSTRUCCIONES

En el caso de los ficheros, la expresión es una llamada a la función open() y la variable es la conexión con el fichero:

with open("FICHERO") as fichero:
    BLOQUE DE INSTRUCCIONES

La función open puede tener varios argumentos. Los más importantes son

with open("FICHERO", mode="MODO", encoding="CODIFICACION") as fichero:
    BLOQUE DE INSTRUCCIONES

En estos apuntes se trabaja únicamente con ficheros de texto y se utiliza siempre el juego de caracteres UTF-8.


Si el sistema operativo utiliza de forma predeterminada el juego de caracteres UTF-8, no haría falta indicar el juego de caracteres al abrir el fichero. Para saber cuál es el juego de caracteres predeterminado se puede ejecutar en IDLE las instrucciones siguientes:

>>> import locale
>>> print(locale.getpreferredencoding(False))
cp1512

De todas formas, aunque el juego de caracteres sea UTF-8, se recomienda indicar siempre explícitamente el juego de caracteres al abrir un fichero, ya que los programas escritos en un sistema operativo se pueden acabar ejecutando en otro.

Escritura

Los modos de escritura son:

Lectura

Los modos de lectura son:

Para saber más