IOKELU
Nivel: Intermedio
💡 Prueba el código:
Puedes ejecutar cualquier ejemplo de esta guía directamente en nuestra consola interactiva: Abrir consola de Python →

CSV en Python: cómo leer, escribir y procesar archivos de datos

Los archivos CSV son uno de los formatos más utilizados para almacenar datos tabulares. Python incluye el módulo csv para trabajar con ellos de forma sencilla y eficiente.

1. ¿Qué es un archivo CSV?

CSV significa Comma Separated Values. Es un formato de texto donde cada línea representa una fila y los valores están separados por comas.

nombre,edad
Ana,22
Luis,30
Iokelu,25

2. Leer archivos CSV

import csv

with open("datos.csv", "r") as archivo:
    lector = csv.reader(archivo)
    for fila in lector:
        print(fila)

Leer CSV con encabezados

import csv

with open("datos.csv", "r") as archivo:
    lector = csv.DictReader(archivo)
    for fila in lector:
        print(fila["nombre"], fila["edad"])

3. Escribir archivos CSV

import csv

with open("salida.csv", "w", newline="") as archivo:
    escritor = csv.writer(archivo)
    escritor.writerow(["nombre", "edad"])
    escritor.writerow(["Ana", 22])
    escritor.writerow(["Luis", 30])

4. DictReader y DictWriter

import csv

usuarios = [
    {"nombre": "Ana", "edad": 22},
    {"nombre": "Luis", "edad": 30}
]

with open("usuarios.csv", "w", newline="") as archivo:
    campos = ["nombre", "edad"]
    escritor = csv.DictWriter(archivo, fieldnames=campos)
    escritor.writeheader()
    escritor.writerows(usuarios)

5. Ejercicios

6. Mini‑proyecto: Analizador de CSV

import csv

with open("usuarios.csv", "r") as archivo:
    lector = csv.DictReader(archivo)
    mayores = [u for u in lector if int(u["edad"]) > 25]

for u in mayores:
    print(u["nombre"], u["edad"])

7. Preguntas frecuentes

¿CSV es lo mismo que Excel?

No, CSV es texto plano; Excel es un formato más complejo.

¿Puedo usar pandas para CSV?

Sí, pero el módulo csv es más ligero y rápido para tareas simples.


Siguiente guía

API Requests en Python →