¿Cómo leer un archivo línea por línea en Python?

Existen varias formas de leer un archivo línea por línea en Python, vamos a ver algunas de ellas y sus ejemplos.

Empecemos utilizando un ciclo for y la función incorporada open().  De esta forma podemos imprimir en pantalla cada una de las líneas que contiene el archivo las cuales iremos recorriendo con ayuda del ciclo for. Vamos a verlo con un ejemplo, pero primero vamos a crear un archivo al que llamaremos ejemplo.txt y será el que utilicemos en este y los siguientes ejercicios. En ese archivo colocaremos el siguiente texto:

Ejemplo para leer
un archivo linea
por linea
utilizando Python

En el siguiente código abriremos el archivo que acabamos de crear y lo iremos recorriendo de forma que veremos las 4 líneas que contiene impresas en pantalla. El código que usaremos es el siguiente:

with open("ejemplo.txt") as f:
    for linea in f:
        print(linea)

>>> with open(«ejemplo.txt») as f:
… for linea in f:
… print(linea)

Ejemplo para leer

un archivo linea

por linea

utilizando Python
>>>

Notarás que entre cada línea del archivo aparece una línea vacía, esto es porque en la impresión hay doble salto de línea (el que incluye la oración y el que coloca la función print()). Esto se puede omitir si modificamos el parámetro end=»» de print().

Otra opción para leer un archivo línea por línea es utilizando el método readlines(). Este método regresa una lista con cada una de las líneas que se encuentran en el archivo. Usemos el archivo ejemplo.txt que creamos en la sección anterior. El código es el siguiente:

with open("ejemplo.txt") as f:
    f.readlines()

>>> with open(«ejemplo.txt») as f:
… f.readlines()

[‘Ejemplo para leer\n’, ‘un archivo linea\n’, ‘por linea\n’, ‘utilizando Python’]

Si las líneas anteriores las introducimos en el interprete vamos a ver el texto del archivo, sin embargo si lo ejecutamos como un script no veremos nada, vamos a modificarlo para asignar la lista resultante a una variable que podamos imprimir posteriormente.

with open("ejemplo.txt") as f:
    texto = f.readlines()
print(texto)

La variable texto ahora tiene la lista que generá el metodo readlines(). Esta opción también nos permite hacerle modificaciones al texto almacenado. Podemos acceder a cada linea mediante los indices de la lista.

Espero que esta entrada te sea muy útil para leer un archivo línea por línea en Python. Cuéntame qué te pareció esta entrada.

¡No olvides suscribirte a nuestro boletín!

¡No enviamos spam! Lee más en nuestra política de privacidad