Cómo leer un fichero línea a línea en Python

Cómo leer un fichero línea a línea en Python
Share on facebook
Share on twitter
Share on linkedin

A la hora de programar siempre hay una serie de tareas repetitivas que me cuesta trabajo recordar. No sé si a ti te pasa lo mismo. Es por eso por lo que decidí crear la sección «Desayuno con Python» en el blog, para recopilar todos esos scripts sencillos pero útiles de uso cotidiano. Uno los scripts que no podía faltar en esta sección es cómo leer un fichero línea a línea en Python.

Leer un fichero línea a línea

Leer las líneas de un fichero es una tarea muy común y muy sencilla. Básicamente, todo se reduce a dos líneas de código:

with open('ruta_del_fichero') as f:
    for linea in f:
        # Tu código aquí

❗ Ten en cuenta que la variable linea incluye el carácter \n al final.

Leyendo un fichero completo

Un objeto de tipo file también ofrece un método llamado read(). Este método leerá el fichero en su totalidad y lo devolverá como una cadena de texto. Usa este método con precaución ya que puede consumir mucha memoria si el fichero es demasiado grande. Yo lo usaría solo en caso de que el fichero fuera muy pequeño.

with open('cloudbutton.py', 'r') as f:
    contenido = f.read()
    print(contenido)

¿Qué significa la palabra with al principio del bloque?

A la hora de gestionar y manipular recursos, como puede ser un fichero, hay ciertos patrones que se suelen repetir. Para estos casos, Python nos ayuda a abstraernos del código repetitivo introduciendo lo que se conocen como «Manejadores de contexto» a través de la sentencia with.

En el caso de los ficheros, with nos asegura de que el fichero se cerrará correctamente después de ejecutarse el código en el interior del bloque, incluso si ocurre alguna excepción.

De manera que el siguiente código

with open('hola.txt', 'r') as f:
    for linea in f:
        ...

sería equivalente a este

f = open('hola.txt', 'r')
try:
    for linea in f:
        ...
finally:
    f.close()

 

¿Me ayudas a compartir el post? 🤗🤟🏻

Share on facebook
Facebook
Share on twitter
Twitter
Share on linkedin
LinkedIn

También te puede interesar

* Te informo de que los datos de carácter personal que proporciones al comentar serán tratados por Juan José Lozano Gómez como responsable de esta web. La Finalidad es moderar los comentarios. La Legitimación es gracias a tu consentimiento. Destinatarios: tus datos se encuentran alojados en Disqus (disqus.com), mi sistema de comentarios, que está acogido al acuerdo de seguridad EU-US Privacy. Podrás ejercer Tus Derechos de Acceso, Rectificación, Limitación o Suprimir tus datos enviando un email a juanjo@j2logo.com. Encontrarás más información en la POLÍTICA DE PRIVACIDAD.

Sobre j2logo

j2logo

Últimos posts

¿Quieres ser un auténtico Pythonista? 🐍

Recibe de vez en cuando trucos, scripts y tutoriales Python en español para dominar el lenguaje. No es SPAM. Date de baja cuando quieras.

* Te informo de que los datos de carácter personal que proporciones serán tratados por Juan José Lozano Gómez como responsable de esta web. La Finalidad es el envío de trucos, scripts, mis publicaciones así como correos comerciales. La Legitimación es gracias a tu consentimiento. Destinatarios: tus datos se encuentran alojados en mi plataforma de email marketing MailRelay que garantiza las medidas de seguridad encaminadas a proteger la privacidad. Podrás ejercer Tus Derechos de Acceso, Rectificación, Limitación o Suprimir tus datos enviando un email a juanjo@j2logo.com. Encontrarás más información en la POLITICA DE PRIVACIDAD

Tutoriales Python en español

👉🏻 🐍 Tutoriales Python. ¿Por qué Python?