Ecriture dans un csv à partir d'un autre csv
Bonjour,
je suis un exercice python qui consiste à récupérer les données présentes dans un csv puis à modifier ces données pour les écrire dans un autre fichier csv.
J'avoue je sèche complement sur l'écriture du nouveau fichier.
**notez que dans un premier temps je voulais prendre les données de input.csv pour les ecrire dans output.csv
Actuellement j'arrive à récup les données de input.csv sous la forme d'un dictionnaire :
Code:
1 2 3 4 5 6
| import csv
with open('input.csv') as fichier_csv:
reader = csv.DictReader(fichier_csv,delimiter=',')
for ligne in reader:
print(ligne) |
resultat :
Code:
1 2 3 4 5 6
|
Python - main.py:7
{'noms': 'Pierre Durand', 'h_ts': '36'}
{'noms': 'Paul Dupont', 'h_ts': '41'}
{'noms': 'Edouard Gentil', 'h_ts': '40'} |
Ensuite je créé le fichier output.csv et j'écris dedans :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| import csv
with open('input.csv') as fichier_csv:
reader = csv.DictReader(fichier_csv,delimiter=',')
for ligne in reader:
print(ligne)
en_tete = ["noms", "h_ts"]
with open('output.csv', 'w') as fichier_csv:
# Créer un objet writer (écriture) avec ce fichier
writer = csv.writer(fichier_csv, delimiter=',')
writer.writerow(en_tete)
# Parcourir les titres et descriptions - zip permet d'itérer sur deux listes ou plus à la fois
for nom, h_t in zip(noms, h_ts):
# Créer une nouvelle ligne avec le titre et la description à ce moment de la boucle
ligne = [nom, h_t]
writer.writerow(ligne) |
c'est que j'ai une erreur :
Code:
1 2 3 4
| line 13, in <module>
for nom, h_t in zip(noms, h_ts):
NameError: name 'noms' is not defined
[Finished in 0.131s] |
noms et h_ts ne sont pas définis :(