Se connecter avec
S'enregistrer | Connectez-vous

Python-->Changer des ';' dans un .csv pour des ','

Dernière réponse : dans Programmation

Voici mon problème:

>>>import csv
>>>cr=csv.reader(open("test.csv","rb"))
>>>for row in cr:
a=row[37]
b=','
c+=a+b

Il dit qu'il y a aucune valeur dans la colonne 37 et pourtant,il en a!
Puis, j'ai remarqué qu'il faut que je change dans le .csv les ';' en ','
pour que ça fonctionne.

Il aurait tu une façon de changer toutes les points-virgule en virgule sans utiliser le remplacer... du notepad. Parce que j'ai trop de colonne et ça gèle quand je fais ça!

Merci! :hello: 

Autres pages sur : python changer csv

Lassé par la pub ? Créez un compte
Expert Programmation

si tu regardes les options, tu verras que le délimiteur par défaut est ',', mais tu peux le changer:
http://docs.python.org/lib/csv-fmt-params.html

si tu n'utilise que des délimiteurs ';' utiliser l'option cr=csv.reader(open("test.csv","rb" ), delimiter=';').

Maintenant, si tu as un mélange des 2, tu peux effectivement lire le fichier (par exemple avec f.readlines()) faire les remplacements sur les chaines de caractères chaine.replace(';', ','), et réenregistrer le tout.
Lassé par la pub ? Créez un compte
Tom's guide dans le monde