Leer datos de archivos

Completados

Tip

Consulte la pestaña Texto e imágenes para obtener más detalles.

Python ofrece varias maneras de leer texto de un archivo. La mejor opción depende del tamaño del archivo y de lo que desea hacer con él.

Leer todo el archivo a la vez

El .read() método devuelve todo el archivo como una sola cadena:

with open("notes.txt", "r") as file:
    contents = file.read()

print(contents)

Este enfoque funciona bien para archivos pequeños, pero para archivos muy grandes carga todo en memoria a la vez.

Note

Si el archivo no existe, open() en modo de lectura genera un FileNotFoundError. Asegúrese de que el archivo existe antes de intentar leerlo.

Leer el archivo como una lista de líneas

El .readlines() método devuelve cada línea como una cadena independiente en una lista. Cada cadena conserva el carácter de salto de línea (\n) al final.

with open("notes.txt", "r") as file:
    lines = file.readlines()

for line in lines:
    print(line.strip())   # .strip() removes the trailing newline

Leer una línea a la vez

La forma que menos memoria consume es recorrer directamente el objeto de archivo. Python lee una línea por bucle:

with open("notes.txt", "r") as file:
    for line in file:
        print(line.strip())

Este patrón se recomienda para archivos grandes porque solo se mantiene una línea en la memoria a la vez.

Elección del enfoque adecuado

Si quieres... Use...
Trabajar con todo el archivo como una cadena .read()
Obtén una lista de líneas a las que puedes acceder por índice .readlines()
Procesar cada línea una a la vez de forma eficaz for line in file