Si vous avez un fichier csv nommé 'blah.csv' qui ressemble à
a,b,c,d
1,2,3,4
2,3,4,5
3,4,5,6
vous savez que vous pouvez ouvrir le fichier pour le lire et créer un DictReader avec
blah = open('blah.csv', 'r')
reader= csv.DictReader(blah)
Ensuite, vous pourrez obtenir la ligne suivante avec reader.next()
, qui devrait afficher
{'a':1,'b':2,'c':3,'d':4}
l'utiliser à nouveau produira
{'a':2,'b':3,'c':4,'d':5}
Cependant, à ce stade, si vous utilisez blah.seek(0)
, la prochaine fois que vous appelez, reader.next()
vous obtiendrez
{'a':1,'b':2,'c':3,'d':4}
encore.
Cela semble être la fonctionnalité que vous recherchez. Je suis sûr qu'il y a quelques astuces associées à cette approche dont je ne suis pas au courant cependant. @Brian a suggéré de créer simplement un autre DictReader. Cela ne fonctionnera pas si votre premier lecteur est à mi-chemin de la lecture du fichier, car votre nouveau lecteur aura des clés et des valeurs inattendues où que vous soyez dans le fichier.