Python escribe en CSV línea por línea

Muhammad Maisam Abbas 30 enero 2023
  1. Escriba datos en un archivo CSV con el manejo tradicional de archivos en Python
  2. Escribir datos en un archivo CSV con la función csv.writer() en Python
Python escribe en CSV línea por línea

Este tutorial discutirá cómo escribir datos tabulares en un archivo CSV en Python.

Escriba datos en un archivo CSV con el manejo tradicional de archivos en Python

Este método está reservado para cuando nuestros datos ya están escritos en un formato separado por comas, y tenemos que escribirlo dentro de algún archivo.

No es una forma muy Pythonica de manejar datos CSV, pero funciona. Tenemos que abrir un archivo CSV en modo de escritura y escribir nuestros datos en el archivo línea por línea. El siguiente fragmento de código muestra una implementación funcional de este método.

data = [["var112"], ["var234"], ["var356"]]
with open("csvfile.csv", "w") as file:
    for line in data:
        for cell in line:
            file.write(cell)
        file.write("\n")

Archivo CSV:

Escriba datos en un archivo CSV con el manejo tradicional de archivos en Python

Escribimos una sola columna dentro de csvfile.csv con la función file.write() en Python.

Este método no es muy fácil de usar cuando se trata de manejar archivos CSV. Este método muy básico solo funciona cuando nuestros datos son simples. A medida que nuestros datos comienzan a crecer y se vuelven cada vez más complejos de manejar, este método se vuelve muy difícil de usar.

Para ahorrarnos el dolor de cabeza de lidiar con diferentes problemas de manejo de archivos, debemos usar el método discutido en la siguiente sección.

Escribir datos en un archivo CSV con la función csv.writer() en Python

Usaremos el módulo csv en Python en este método.

El módulo csv maneja archivos CSV y datos en Python. La función writer() dentro de la biblioteca csv toma el archivo CSV como parámetro de entrada y devuelve un objeto escritor responsable de convertir los datos del usuario en formato CSV y escribirlos en el archivo.

Podemos escribir datos en nuestro archivo CSV con la función writerows() dentro de este objeto escritor. El siguiente fragmento de código muestra una implementación funcional de este enfoque.

import csv

data = [["var1", "val1", "val2"], ["var2", "val3", "val4"], ["var3", "val5", "val6"]]
with open("csvfile2.csv", "w") as file:
    writer = csv.writer(file)
    writer.writerows(data)

Archivo CSV:

csv2

Escribimos los valores almacenados en la lista anidada data en el archivo csvfile2.csv. Cada lista en los data corresponde a una fila única en el archivo de salida.

Este método es preferible a nuestro enfoque anterior porque el módulo csv facilita el manejo de datos CSV en Python. Tenga en cuenta que aún necesitamos usar el manejo de archivos con este método, pero es mucho más fácil que simplemente usar la técnica tradicional de manejo de archivos.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Artículo relacionado - Python CSV