Ajouter une nouvelle ligne à un fichier CSV en Python

Najwa Riyaz 30 janvier 2023
  1. Ajouter les données de la liste au fichier CSV en Python à l’aide de writer.writerow()
  2. Ajouter des données dans le dictionnaire au fichier CSV en Python à l’aide de DictWriter.writerow()
Ajouter une nouvelle ligne à un fichier CSV en Python

Si vous souhaitez ajouter une nouvelle ligne dans un fichier CSV en Python, vous pouvez utiliser l’une des méthodes suivantes.

  1. Affectez les données de la ligne souhaitée dans une liste. Ensuite, ajoutez les données de cette liste au fichier CSV en utilisant writer.writerow().
  2. Affectez les données de la ligne souhaitée dans un dictionnaire. Ensuite, ajoutez les données de ce dictionnaire au fichier CSV en utilisant DictWriter.writerow().

Ajouter les données de la liste au fichier CSV en Python à l’aide de writer.writerow()

Dans ce cas, avant d’ajouter la nouvelle ligne dans l’ancien fichier CSV, nous devons affecter les valeurs de ligne à une liste.

Par example,

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

Ensuite, transmettez ces données de la liste en argument à la fonction writerow() de l’objet CSV writer().

Par example,

csvwriter_object.writerow(list)

Conditions préalables:

  • La classe CSV writer doit être importée du module CSV.
    from csv import writer
    
  • Avant d’exécuter le code, le fichier CSV doit être fermé manuellement.

Exemple - Ajouter des données dans la liste au fichier CSV à l’aide de writer.writerow()

Voici un exemple de code qui montre comment ajouter les données présentes dans une liste dans un fichier 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()

Supposons avant d’exécuter le code ; l’ancien fichier CSV contient le contenu ci-dessous.

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

Une fois le code exécuté, le fichier CSV sera modifié.

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

Ajouter des données dans le dictionnaire au fichier CSV en Python à l’aide de DictWriter.writerow()

Dans ce cas, avant d’ajouter la nouvelle ligne dans l’ancien fichier CSV, affectez les valeurs de ligne à un dictionnaire.

Par example,

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

Ensuite, transmettez ces données du dictionnaire en argument à la fonction writerow() de l’objet DictWriter() du dictionnaire.

Par example,

dictwriter_object.writerow(dict)

Conditions préalables:

  • La classe DictWriter doit être importée du module CSV.
    from csv import DictWriter
    
  • Avant d’exécuter le code, le fichier CSV doit être fermé manuellement.

Exemple - Ajouter des données dans le dictionnaire au fichier CSV à l’aide de DictWriter.writerow()

Voici un exemple de code qui montre comment ajouter les données présentes dans un dictionnaire dans un fichier 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()

Supposons qu’avant d’exécuter le code, l’ancien fichier CSV contienne le contenu ci-dessous.

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

Une fois le code exécuté, le fichier CSV sera modifié.

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

Article connexe - Python CSV