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.

Leer un fichero en python 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()

Si te ha resultado útil, compártelo con tus amigos 🤗

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

Sé un Pythonista: Recibe trucos Python y accede a nuestro espacio de Slack

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

Quiero ayudarte a que seas mejor programador/a, pero no uno cualquiera, sino uno de los top.

Ú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

🥇 Accede a nuestra comunidad privada de Slack: Pythonistas-es

* Al enviar el formulario confirmas que aceptas la POLITICA DE PRIVACIDAD

Pythonistas-es

SÉ UN AUTÉNTICO PYTHONISTA

📩 Recibe trucos, scripts y tutoriales Python

🥇 Accede a nuestra comunidad privada de Slack