Agregar nueva fila a un archivo CSV en Python

Najwa Riyaz 30 enero 2023
  1. Agregar datos en la lista al archivo CSV en Python usando writer.writerow()
  2. Agregar datos en el diccionario al archivo CSV en Python usando DictWriter.writerow()
Agregar nueva fila a un archivo CSV en Python

Si desea agregar una nueva fila a un archivo CSV en Python, puede usar cualquiera de los siguientes métodos.

  1. Asigne los datos de la fila deseada a una lista. Luego, agregue los datos de esta Lista al archivo CSV usando writer.writerow().
  2. Asigne los datos de la fila deseada en un diccionario. Luego, agregue los datos de este diccionario al archivo CSV usando DictWriter.writerow().

Agregar datos en la lista al archivo CSV en Python usando writer.writerow()

En este caso, antes de agregar la nueva fila al archivo CSV anterior, debemos asignar los valores de la fila a una lista.

Por ejemplo,

list = ["4", "Alex Smith", "Science"]

A continuación, pase estos datos de la Lista como un argumento a la función writerow() del objeto CSV writer().

Por ejemplo,

csvwriter_object.writerow(list)

Prerrequisitos:

  • La clase CSV writer debe importarse desde el módulo CSV.
    from csv import writer
    
  • Antes de ejecutar el código, el archivo CSV debe cerrarse manualmente.

Ejemplo: agregar datos en la lista al archivo CSV usando writer.writerow()

Aquí hay un ejemplo del código que muestra cómo se pueden agregar los datos presentes en una lista en un archivo CSV:

# Pre-requisite - Import the writer class from the csv module
from csv import writer

# The data assigned to the list
list_data = ["03", "Smith", "Science"]

# Pre-requisite - The CSV file should be manually closed before running this code.

# First, open the old CSV file in append mode, hence mentioned as 'a'
# Then, for the CSV file, create a file object
with open("CSVFILE.csv", "a", newline="") as f_object:
    # Pass the CSV  file object to the writer() function
    writer_object = writer(f_object)
    # Result - a writer object
    # Pass the data in the list as an argument into the writerow() function
    writer_object.writerow(list_data)
    # Close the file object
    f_object.close()

Supongamos que antes de ejecutar el código; el antiguo archivo CSV contiene el siguiente contenido.

ID,NAME,SUBJECT
01,Henry,Python
02,Alice,C++

Una vez que se ejecuta el código, se modificará el archivo CSV.

ID,NAME,SUBJECT
01,Henry,Python
02,Alice,C++
03,Smith,Science

Agregar datos en el diccionario al archivo CSV en Python usando DictWriter.writerow()

En este caso, antes de agregar la nueva fila al archivo CSV anterior, asigne los valores de la fila a un diccionario.

Por ejemplo,

dict = {"ID": 5, "NAME": "William", "SUBJECT": "Python"}

A continuación, pase estos datos del diccionario como un argumento a la función writerow() del objeto DictWriter() del diccionario.

Por ejemplo,

dictwriter_object.writerow(dict)

Prerrequisitos:

  • La clase DictWriter tiene que ser importada desde el módulo CSV.
    from csv import DictWriter
    
  • Antes de ejecutar el código, el archivo CSV debe cerrarse manualmente.

Ejemplo: anexar datos en el diccionario a un archivo CSV usando DictWriter.writerow()

Aquí hay un ejemplo del código que muestra cómo se pueden agregar los datos presentes en un diccionario en un archivo CSV.

# Pre-requisite - Import the DictWriter class from csv  module
from csv import DictWriter

# The list of column names as mentioned in the CSV file
headersCSV = ["ID", "NAME", "SUBJECT"]
# The data assigned to the dictionary
dict = {"ID": "04", "NAME": "John", "SUBJECT": "Mathematics"}

# Pre-requisite - The CSV file should be manually closed before running this code.

# First, open the old CSV file in append mode, hence mentioned as 'a'
# Then, for the CSV file, create a file object
with open("CSVFILE.csv", "a", newline="") as f_object:
    # Pass the CSV  file object to the Dictwriter() function
    # Result - a DictWriter object
    dictwriter_object = DictWriter(f_object, fieldnames=headersCSV)
    # Pass the data in the dictionary as an argument into the writerow() function
    dictwriter_object.writerow(dict)
    # Close the file object
    f_object.close()

Supongamos que, antes de ejecutar el código, el archivo CSV antiguo contiene el contenido siguiente.

ID,NAME,SUBJECT
01,Henry,Python
02,Alice,C++
03,Smith,Science

Una vez que se ejecuta el código, se modificará el archivo CSV.

ID,NAME,SUBJECT
01,Henry,Python
02,Alice,C++
03,Smith,Science
04,John,Mathematics

Artículo relacionado - Python CSV