Python >> Lectura y escritura de ficheros en Python

A la hora de presentar los datos que generamos en nuestras aplicaciones podemos optar por varias alternativas, como por ejemplo mostrar dicho datos por pantalla o escribirlos en un fichero para su posterior lectura. En esta ocasión vamos a ver como leer y escribir ficheros en Python.

python-logo

Tanto para leer como para escribir un fichero lo primero que hay que hacer es abrir el fichero con la función open() que usamos con dos argumentos: open(filename, mode). Una vez hayamos terminado de trabajar con el fichero debemos cerrarlo usando la función f.close().

  • Lectura de ficheros

Python nos proporciona diferentes maneras de leer un fichero. En primer lugar podemos leer un fichero completamente usando la función f.read():

# En primer lugar debemos de abrir el fichero que vamos a leer.
# Usa 'rb' en vez de 'r' si se trata de un fichero binario.
infile = open('texto.txt', 'r')
# Mostramos por pantalla lo que leemos desde el fichero
print('>>> Lectura completa del fichero')
print(infile.read())
# Cerramos el fichero.
infile.close()

También podemos optar por leer una cantidad determinadas de bytes del fichero usando la función f.read(size):

# En primer lugar debemos de abrir el fichero que vamos a leer.
# Usa 'rb' en vez de 'r' si se trata de un fichero binario.
infile = open('texto.txt', 'r')
# Mostramos por pantalla lo que leemos desde el fichero
print('>>> Lectura de una cantidad determinada de bytes')
print(infile.read(50) + '\n')
# Cerramos el fichero.
infile.close()

Podemos optar por leer una única línea del fichero con la función f.readline():

# En primer lugar debemos de abrir el fichero que vamos a leer.
# Usa 'rb' en vez de 'r' si se trata de un fichero binario.
infile = open('texto.txt', 'r')
# Mostramos por pantalla lo que leemos desde el fichero
print('>>> Lectura de una línea del fichero')
print(infile.readline())
# Cerramos el fichero.
infile.close()

Por último, podemos leer un fichero completo línea a línea de la siguiente manera:

# En primer lugar debemos de abrir el fichero que vamos a leer.
# Usa 'rb' en vez de 'r' si se trata de un fichero binario.
infile = open('texto.txt', 'r')
# Mostramos por pantalla lo que leemos desde el fichero
print('>>> Lectura del fichero línea a línea')
for line in infile:
	print(line)
# Cerramos el fichero.
infile.close()
  • Escritura del fichero

Para escribir un fichero en Python tendremos básicamente dos opciones que vamos a ver a continuación. Primero podemos escribir un fichero sobreescribiendo el contenido del fichero:

outfile = open('texto.txt', 'w') # Indicamos el valor 'w'.
outfile.write('Fusce vitae leo purus, a tempor nisi.\n')
outfile.close()
# Leemos el contenido para comprobar que ha sobreescrito el contenido.
infile = open('texto.txt', 'r')
print('>>> Escritura de fichero sobreescribiendo su contenido.')
print(infile.read())
# Cerramos el fichero.
infile.close()

O podemos concatenar el nuevo contenido al contenido ya existente en el fichero:

outfile = open('texto.txt', 'a') # Indicamos el valor 'w'.
outfile.write('Fusce vitae leo purus, a tempor nisi.\n')
outfile.close()
# Leemos el contenido para comprobar que ha sobreescrito el contenido.
infile = open('texto.txt', 'r')
print('>>> Escritura de fichero concatenando su contenido.')
print(infile.read())
# Cerramos el fichero.
infile.close()

Descargar el código | Github

Etiquetado

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: