Guardar datos en Excel y CSV: Guía Python

Entrenador de Python en Línea para Principiantes

Aprende Python fácilmente sin sobrecargarte de teoría. Resuelve tareas prácticas con verificación automática, recibe pistas y escribe código directamente en el navegador, sin instalar nada.

Start Course

Formatos principales para almacenar datos en Python

Trabajar con archivos Excel y CSV es una habilidad fundamental para desarrolladores Python, especialmente en áreas como análisis de datos, automatización de informes y desarrollo backend. Escribir datos correctamente en archivos permite almacenar, transferir y procesar información de manera eficiente entre diferentes sistemas.

En esta guía exploramos las principales formas de guardar datos en formatos populares utilizando bibliotecas estándar y de terceros en Python. Aprenderás ejemplos prácticos con archivos CSV y Excel, así como técnicas de formato y estructuración de datos.

Formato CSV: características y usos

¿Qué es el formato CSV?

CSV (Comma-Separated Values) es un formato de texto simple para almacenar datos tabulares. En este formato, los valores se separan por comas u otros caracteres delimitadores, como punto y coma o tabulaciones. El formato CSV se usa ampliamente para intercambiar datos entre distintas aplicaciones y sistemas.

Ventajas del formato CSV

  • Formato de texto ligero y legible
  • Se abre rápidamente en cualquier editor de texto, incluyendo Excel
  • Ideal para transferir datos entre sistemas
  • Tamaño de archivo reducido en comparación con formatos binarios
  • Compatible con la mayoría de programas de análisis de datos

Limitaciones del formato CSV

  • No admite formato complejo (colores, fuentes)
  • Imposibilidad de almacenar fórmulas o cálculos
  • Soporte limitado para diferentes tipos de datos
  • No permite almacenar imágenes ni tablas anidadas

Trabajar con CSV usando la biblioteca estándar

Fundamentos del módulo csv

El módulo csv viene incluido en la instalación estándar de Python y no requiere instalación adicional. Proporciona herramientas prácticas para leer y escribir archivos CSV con diversas configuraciones de formato.

import csv

data = [
    ['Nombre', 'Edad', 'Ciudad'],
    ['Carlos', 28, 'Madrid'],
    ['María', 25, 'Barcelona']
]

with open('personas.csv', 'w', newline='', encoding='utf-8') as file:
    writer = csv.writer(file)
    writer.writerows(data)

Al ejecutar este código se crea el archivo personas.csv con el siguiente contenido:

Nombre,Edad,Ciudad
Carlos,28,Madrid
María,25,Barcelona

Configurar delimitadores en CSV

El delimitador estándar en CSV se puede cambiar según los requisitos del sistema o la configuración regional:

with open('personas.csv', 'w', newline='', encoding='utf-8') as file:
    writer = csv.writer(file, delimiter=';')
    writer.writerows(data)

Trabajar con DictWriter

Para manejar datos en forma de diccionarios de manera más cómoda, se utiliza la clase DictWriter:

import csv

data = [
    {'Nombre': 'Carlos', 'Edad': 28, 'Ciudad': 'Madrid'},
    {'Nombre': 'María', 'Edad': 25, 'Ciudad': 'Barcelona'}
]

with open('personas.csv', 'w', newline='', encoding='utf-8') as file:
    fieldnames = ['Nombre', 'Edad', 'Ciudad']
    writer = csv.DictWriter(file, fieldnames=fieldnames)
    writer.writeheader()
    writer.writerows(data)

Trabajar con archivos Excel usando openpyxl

Instalación y configuración de la biblioteca

Los archivos Excel se utilizan cuando es necesario almacenar datos estructurados con formato, fórmulas o gráficos. La biblioteca openpyxl ofrece un conjunto completo de herramientas para trabajar con archivos Excel.

pip install openpyxl

Crear un archivo Excel básico

from openpyxl import Workbook

data = [
    ['Nombre', 'Edad', 'Ciudad'],
    ['Carlos', 28, 'Madrid'],
    ['María', 25, 'Barcelona']
]

wb                

Blogs

Book Recommendations