Problem: mehrfaches Iterieren über DictReader
Verfasst: Mittwoch 5. März 2008, 19:35
Hallo zusammen,
ich habe ein kleines Problem mit DictReader.
Ich würde gerne wissen, ob es möglich ist, über eine Instanz von DictReader mehr als einmal zu iterieren.
Beispiel:
Über ein Dictionary kann ich ja so oft iterieren, wie ich lustig bin.
Das funzt auch noch, wenn ich die for-Schleife x-mal ausführe.
Versuche ich ähnliches mit einem DictReader ist nach dem ersten Durchlauf Schluß.
Rufe ich diese for-Schleife nochmal auf, bleibt row leer.
Ich weiß, dass man das Dictionary nicht direkt mit dem DictReader vergleichen kann, da der DictReader ja eine Anzahl von Dictionaries ausspuckt und ich folglich nicht direkt über ein Dictionary iteriere.
Dennoch kann ich mir kaum vorstellen, dass das bei einem DictReader nur einmal gehen soll. Gibt es irgendeine Möglichkeit, quasi zum Anfang zurückzuspulen? Sowas wie reader.reset()???
Vielen Dank für euere Hilfe.
Ein grübelnder
Darkelf
ich habe ein kleines Problem mit DictReader.
Ich würde gerne wissen, ob es möglich ist, über eine Instanz von DictReader mehr als einmal zu iterieren.
Beispiel:
Über ein Dictionary kann ich ja so oft iterieren, wie ich lustig bin.
Code: Alles auswählen
dic = {10:10, 11:11, 12:12}
for key in dic:
print key
>>10
>>11
>>12
Versuche ich ähnliches mit einem DictReader ist nach dem ersten Durchlauf Schluß.
Code: Alles auswählen
reader = csv.DictReader(open("dictest.csv"), delimiter=";")
for row in reader:
print row
>>(der Output)
Ich weiß, dass man das Dictionary nicht direkt mit dem DictReader vergleichen kann, da der DictReader ja eine Anzahl von Dictionaries ausspuckt und ich folglich nicht direkt über ein Dictionary iteriere.
Dennoch kann ich mir kaum vorstellen, dass das bei einem DictReader nur einmal gehen soll. Gibt es irgendeine Möglichkeit, quasi zum Anfang zurückzuspulen? Sowas wie reader.reset()???
Vielen Dank für euere Hilfe.
Ein grübelnder
Darkelf