Seite 1 von 1

csv.DictWriter funktioniert nicht wie gewünscht

Verfasst: Donnerstag 11. April 2013, 16:16
von Butterfly
Hallo Zusammen,

vielleicht habt ihr einen Tip für mich...
ich will in eine CSV-Datei schreiben und zwar mi der Möglichkeit

writer=csv.DictWriter(open("test.csv", "a"), ["Nr", "Name", "Vorname"])
csvlines=({"Name" : "Mustermann", "Nr":2, "Vorname":"Alexander"},{"Name" : "Mustermann2", "Nr":4, "Vorname":"Stefan"} )
writer.writerows(csvlines)
...

dann werden mir nicht wie erhofft die Zeilen anhand des Spaltenheaders in die csv geschrieben, sondern genau in der Reihenfolge, wie sie im Dictionary wiederzufinden ist...
Mustermann, 2,Alexander
Mustermann2, 4, Stefan

... habe ich eine Möglichkeit, dass es genau in der Sequenz passiert, wie ich den Header angegeben habe...
2, Mustermann, Alexander
2, Mustermann2, Stefan...

Grüße

Re: csv.DictWriter funktioniert nicht wie gewünscht

Verfasst: Donnerstag 11. April 2013, 16:27
von BlackJack
@Butterfly: Das Problem kann ich nicht nachvollziehen. Bist Du sicher dass Du in der richtigen Datei nachschaust? Und hast Du die Datei auch wieder geschlossen? Und bist Du sicher das Du nicht alte Daten am Anfang der Datei hast die in einer falschen Reihenfolge sind?

Re: csv.DictWriter funktioniert nicht wie gewünscht

Verfasst: Freitag 12. April 2013, 12:25
von Butterfly
ja ich bin mir sicher, da ich nen print ausgebe...
ich verwende Python 2.5, eine höhere Version wird von meinem System nicht unterstützt.

Allerdings habe ich nun einen anderen Weg gewählt, mit der richtigen Sortierung.

Danke

Grüße

Re: csv.DictWriter funktioniert nicht wie gewünscht

Verfasst: Freitag 12. April 2013, 14:41
von BlackJack
@Butterfly: Ich formuliere es mal weniger vorsichtig: Das was Du behauptest kann nicht sein, denn auch bei Python 2.5 ist nicht so ein grober Fehler drin der bisher keinem ausser Dir aufgefallen ist.

Re: csv.DictWriter funktioniert nicht wie gewünscht

Verfasst: Donnerstag 25. April 2013, 12:52
von Butterfly
Hi BlackJack,

ja ich gebe dir voll und ganz recht... ich habe das ganze auch nochmal auf die einzelnen Zeilen herunter gebrochen und meine Dateien kontrolliert und jetzt geht es auch... Hatte die falsche Datei!

Danke.

Gruß