Bijour forum
Pouf une question sur Python :
je dispose d'un fichier CSV (données séparées par des virgules) et je m'écris un parseur en python (je n'ai pas besoin qu'on me donne un parseur tout fait, le mien convient largement !)
Le problème c'est qu'il y a des accents dans les données, et j'arrive pas à les utiliser correctement !
Mon fichier CSV est en iso-8859-15, le script python aussi (# -*- encoding....)
Voici ce qu'il me donne sur une ligne contenant un accent :
['117', 'CE2 A', '0', 'Ext\xe9rieur']
Vous voyez, le quatrième champ est mal lu ou mal affiché.
comment résoudre ce problème ?
Merci d'avance
# Tout ça m'a l'air parfaitement normal...
Posté par bobert . Évalué à 2.
Ne pas confondre évaluation et affichage via la fonction print...
[^] # Re: Tout ça m'a l'air parfaitement normal...
Posté par Pinaraf . Évalué à 1.
print fichier.lignes
fichier.lignes est une liste de listes...
Quand je fais
print fichier.lignes[0]
=> ['117', 'CE2 A', '0', 'Ext\xe9rieur']
Mais print fichier.lignes[0][3]
=> Extérieur
Sauf que moi je veux afficher les listes intégralement, et pas un élément à la fois...
[^] # Re: Tout ça m'a l'air parfaitement normal...
Posté par bobert . Évalué à 2.
[^] # Re: Tout ça m'a l'air parfaitement normal...
Posté par Pinaraf . Évalué à 1.
Mais comment je fais quand je connais pas la longueur de la ligne ?
[^] # Re: Tout ça m'a l'air parfaitement normal...
Posté par bobert . Évalué à 2.
[^] # Re: Tout ça m'a l'air parfaitement normal...
Posté par gc (site web personnel) . Évalué à 3.
Notons que Ruby fait sensiblement pareil :
[gc@meuh ~] irb
irb(main):001:0> ary = [ 117, 'CE2 A', 0, 'Extérieur' ]
=> [117, "CE2 A", 0, "Ext\351rieur"]
# Titre
Posté par durandal . Évalué à 2.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.