Le module csv permet de manipuler les fichiers du même nom (comma-separated files). Rappelons que...
On peut procéder ainsi...
>>> import csv >>> f = open('toto.csv', 'rt') >>> try: ... reader = csv.reader(f) ... for ligne in reader: ... print ligne ... finaly: ... f.close() ...
La première ligne du code ci-dessus est constituée des noms des colonnes de la feuille de calcul. La iième ligne est une liste des colonnes de la iième ligne de l'objet csv. Elle est, par défaut, constituée de chaînes de caractères.
La lecture peut se faire sur tout itérable, et des options peuvent être passées pour spécifier comment lire le csv.
On procède comme ci-dessus pour écrire dans un fichier csv : on instancie un objet writer, et on utilise la méthode writerow() pour écrire une ligne.
>>> import csv >>> f = open('toto.csv', 'wt') >>> writer = csv.writer(f) >>> writer.writerow(('col1', 'col2', 'col3')) >>> writer.writerow((1, '2', 'abc')) >>> f.close()
Si besoin est, on peut exiger à ce que les chaînes de caractères apparaissent entre guillemets dans le csv, ainsi :
>>> writer = csv.writer(f, quoting = csv.QUOTE_NONNUMERIC)
Les autres options possibles, pour l'inclusion de ces guillemets, sont QUOTE_ALL, et QUOTE_NONE, dont l'explication est immédiate.
Les dictionnaires peuvent être utilisés pour contenir les données d'un fichier csv. Les clés du dictionnaire correspondent alors aux éléments contenus dans la première ligne du fichier csv.
Pour procéder ainsi, il suffit de remplacer :