Je traite un fichier CSV similaire à celuiComment analyser un fichier CSV mixte en Python?
foo; val1; position1
bar; name1; address1; phone_nbr1
bar; name2; address2; phone_nbr2
foo; val2; position2
bar; name3; address3; phone_nbr3
bar; name4; address4; phone_nbr4
bar; name5; address5; phone_nbr5
bar; name6; address6; phone_nbr6
foo; val3; position3
Inutile de dire que je ne peux pas modifier le CSV.
Les instances affichées dans foo
lignes sont différentes de celles avec bar
lignes (avis ils ont même pas le même nombre de champs)
J'ai besoin simplement lire ces données, pas besoin de l'écrire.
Ma première idée était de séparer le fichier en deux fichiers temporaires, puis de les lire séparément avec un csv.DictReader
, mais je n'aime vraiment pas cette approche.
Existe-t-il une façon plus simple de faire cela? Je voudrais éviter si possible d'écrire des fichiers sur le disque. Pour l'anecdote, j'utilise Python2.7 sur une machine Solaris 10.