Entrada y salida de archivos
Leer y escribir archivos en Python es una tarea sumamente sencilla. No se diferencia en mucho, en efecto, de la solución de otros lenguajes: todos proveen una API bastante similar.
Para abrir un archivo emplearemos la función incorporada open()
.
Luego, podremos acceder a su contenido vía el método read()
y
finalmente cerrar el fichero vía close()
.
f = open("archivo.txt")
print(f.read())
f.close()
El primer argumento es una cadena que indica la ruta del archivo que
queremos abrir, la cual puede ser absoluta (p. ej.
C:\Documentos\archivo.txt
) o bien relativa, como se observa en el
ejemplo.
Para escribir en un archivo, utilizamos el método write()
. Pero
primero debemos indicarle a open()
que queremos abrir el archivo como
escritura, con un segundo argumento.
f = open("archivo.txt", "w")
f.write("¡Hola, mundo!")
f.close()
Nótese que este código, al escrbir, reemplaza todo contenido anterior. Para preservarlo y, en su lugar, escribir al final del archivo, debemos indicar un tercer modo de apertura.
f = open("archivo.txt", "a")
# Esto se agrega al final del archivo.
f.write("¡Hola, mundo!")
f.close()
Si bien no hemos hablado de la palabra reservada with
, considero un
deber comentarte esta otra forma de trabajar con archivos.
with open("archivo.txt") as f:
print(f.read())
Este ejemplo es similar al primero, con la diferencia que Python se
encargará de llamar a close()
cuando hayas terminado de usar el
archivo, ¡incluso si ocurre una excepción! Por ello se considera la
opción más recomendada.
Otros métodos de los ficheros incluyen seek()
, readline()
y
readlines()
. Te dejo este otro artículo para que explores estas
cuestiones y otras más sobre el tema: Lectura y escritura de
archivos.
Hasta el momento hemos aprendido varios conceptos que constituyen el corpus de herramientas que el lenguaje ofrece para que explotemos. Veamos, ahora, cómo organizar nuestro código en distintos archivos y carpetas.