Recherche…


Introduction

L'écriture dans un fichier .csv n'est pas sans rappeler l'écriture dans un fichier régulier à tous égards, et est assez simple. Au mieux de mes capacités, je couvrirai l'approche la plus simple et la plus efficace du problème.

Paramètres

Paramètre Détails
open ( "/ path /" , "mode") Spécifiez le chemin d'accès à votre fichier CSV
ouvert (chemin, "mode" ) Spécifiez le mode pour ouvrir le fichier (lecture, écriture, etc.)
csv.writer ( fichier , délimiteur) Passer le fichier CSV ouvert ici
csv.writer (fichier, délimiteur = '' ) Spécifier le caractère ou le motif du délimiteur

Remarques

open( path, "wb")

"wb" - Mode d'écriture.

Le paramètre b dans "wb" nous avons utilisé n'est nécessaire que si vous voulez l'ouvrir en mode binaire, ce qui n'est nécessaire que dans certains systèmes d'exploitation comme Windows.

csv.writer ( csv_file, delimiter=',' )

Ici, le délimiteur que nous avons utilisé est , car nous voulons que chaque cellule de données dans une rangée contienne respectivement le prénom, le nom de famille et l'âge. Étant donné que notre liste est divisée le long de la , aussi, il se révèle assez pratique pour nous.

Exemple d'écriture de base

import csv

#------ We will write to CSV in this function ------------

def csv_writer(data, path):
    
    #Open CSV file whose path we passed.
    with open(path, "wb") as csv_file:
        
        writer = csv.writer(csv_file, delimiter=',')
        for line in data:
            writer.writerow(line)



#---- Define our list here, and call function ------------

if __name__ == "__main__":

    """
    data = our list that we want to write. 
    Split it so we get a list of lists.
    """
    data = ["first_name,last_name,age".split(","),
            "John,Doe,22".split(","),
            "Jane,Doe,31".split(","),
            "Jack,Reacher,27".split(",")
            ]

    # Path to CSV file we want to write to.
    path = "output.csv"
    csv_writer(data, path)

Ajout d'une chaîne en tant que nouvelle ligne dans un fichier CSV

def append_to_csv(input_string):
    with open("fileName.csv", "a") as csv_file:
        csv_file.write(input_row + "\n")


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow