Volver a la página principal
sábado 14 septiembre 2024
38

Cómo crear un archivo CSV en Python

Un archivo CSV (Comma-Separated Values) es un formato de archivo simple que se utiliza para almacenar datos tabulares, como hojas de cálculo o bases de datos, donde cada línea representa un registro y cada valor está separado por comas. Python proporciona una biblioteca nativa llamada csv que facilita la lectura y escritura de archivos CSV.

Importando la biblioteca CSV

Antes de empezar a trabajar con archivos CSV, es necesario importar la biblioteca csv:

import csv

Escribiendo datos en un archivo CSV

Para crear y escribir en un archivo CSV en Python, se usa la función csv.writer(). Puedes escribir filas individualmente o a través de una lista de filas.

Ejemplo básico de creación de archivo CSV

import csv

# Datos para escribir en el archivo CSV
datos = [
    ['Nombre', 'Edad', 'Ciudad'],
    ['Carlos', 22, 'Madrid'],
    ['Ana', 30, 'Barcelona'],
    ['Luis', 25, 'Valencia']
]

# Creando y escribiendo en el archivo CSV
with open('personas.csv', mode='w', newline='') as archivo_csv:
    escritor_csv = csv.writer(archivo_csv)
    escritor_csv.writerows(datos)

print("Archivo CSV creado con éxito.")

En este ejemplo, el archivo personas.csv se crea en el mismo directorio que el script de Python, y contiene los datos tabulares especificados en la lista datos.

Especificando un delimitador personalizado

Por defecto, los valores están separados por comas, pero puedes cambiar el delimitador a otro símbolo, como un punto y coma.

with open('personas.csv', mode='w', newline='') as archivo_csv:
    escritor_csv = csv.writer(archivo_csv, delimiter=';')
    escritor_csv.writerows(datos)

Escribiendo un archivo CSV con diccionarios

Otra forma útil de escribir en un archivo CSV es utilizando diccionarios. Cada fila será un diccionario donde las claves serán los nombres de las columnas.

Ejemplo de escritura con DictWriter

import csv

# Datos para escribir en el archivo CSV
datos = [
    {'Nombre': 'Carlos', 'Edad': 22, 'Ciudad': 'Madrid'},
    {'Nombre': 'Ana', 'Edad': 30, 'Ciudad': 'Barcelona'},
    {'Nombre': 'Luis', 'Edad': 25, 'Ciudad': 'Valencia'}
]

# Creando y escribiendo en el archivo CSV
with open('personas_dict.csv', mode='w', newline='') as archivo_csv:
    campos = ['Nombre', 'Edad', 'Ciudad']
    escritor_csv = csv.DictWriter(archivo_csv, fieldnames=campos)

    escritor_csv.writeheader()  # Escribir los nombres de las columnas
    escritor_csv.writerows(datos)

print("Archivo CSV con diccionarios creado con éxito.")

Este ejemplo crea un archivo CSV a partir de una lista de diccionarios y escribe un encabezado con los nombres de las columnas.

Referencia oficial

Para más información sobre cómo manejar archivos CSV en Python, puedes visitar la documentación oficial de Python.

Etiquetas:
python
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer