Leer filas de un CSV
Objetivos
Al terminar podrás explicar el concepto principal y adaptar el ejemplo a un caso sencillo.
Concepto
CSV significa comma-separated values (valores separados por comas). El módulo estándar csv interpreta comillas y separadores; split(",") puede dividir incorrectamente una coma que forma parte de un campo entrecomillado. DictReader usa encabezados como claves y entrega textos. Abre con encoding="utf-8", newline=""; convierte los valores después de validarlos.
Ejemplo
import csv
from pathlib import Path
ruta = Path(__file__).parent / "gastos.csv"
with ruta.open(encoding="utf-8", newline="") as archivo:
for fila in csv.DictReader(archivo):
print(fila["categoria"], fila["monto"])El bucle presenta la categoría y el monto de cada fila del archivo. with cierra el archivo al finalizar.
Práctica guiada
Crea un CSV con encabezados categoría y monto y léelo con DictReader.
Reto
Cuenta filas e informa el número de fila de cada registro.
Ver respuesta al reto
import csv
from pathlib import Path
ruta = Path(__file__).parent / "gastos.csv"
with ruta.open(encoding="utf-8", newline="") as archivo:
for numero_fila, fila in enumerate(csv.DictReader(archivo), start=2):
print(numero_fila, fila)La fila 1 contiene los encabezados; los primeros datos empiezan en la fila 2.
Quiz
Comprobación
Revisa que el ejemplo produzca el resultado esperado y prueba también un caso límite relacionado con la lección.