csv.writer.writerow() schreibt zu viele Nachkommastellen
Verfasst: Sonntag 28. Dezember 2014, 19:08
Hallo,
ich habe das ungewöhnliche Problem, dass mir die Funktion csv.writer.writerow() in der zu schreibenden txt-datei statt zwei Nachkommastellen (wie das array, das der funktion übergeben wird) 15 Nachkommastellen reinpackt.
So wird aus 25.44 ein 25.440000000000001
Dies bläht meine txt-Datei auf über 5mb auf, statt sonst nur etwa 2 mb (es sind über 2000000 Zeilen).
Ich habe keine Ahnung woher der Fehler kommt. Wenn ich mir in der Python-Console das Array ausspucken lasse, welches ich der Funktion übergebe, sind es immer nur 2Nachkommastellen. Der Fehler scheint also eindeutig nur in dieser Funktion zu stecken.
Das Problem ist für mich gar nicht so unerheblich, da ich über 1500-csv-Dateien habe, die ich mittels dem Pythonskript in txt-Dateien wandeln muss (und deren aufbau geänder werden muss). Da macht ein Unterschied von 3mb pro datei schon etwas aus.
Wie kann ich diesen Fehler beheben?
Danke
Gruß
ich habe das ungewöhnliche Problem, dass mir die Funktion csv.writer.writerow() in der zu schreibenden txt-datei statt zwei Nachkommastellen (wie das array, das der funktion übergeben wird) 15 Nachkommastellen reinpackt.
So wird aus 25.44 ein 25.440000000000001
Dies bläht meine txt-Datei auf über 5mb auf, statt sonst nur etwa 2 mb (es sind über 2000000 Zeilen).
Ich habe keine Ahnung woher der Fehler kommt. Wenn ich mir in der Python-Console das Array ausspucken lasse, welches ich der Funktion übergebe, sind es immer nur 2Nachkommastellen. Der Fehler scheint also eindeutig nur in dieser Funktion zu stecken.
Das Problem ist für mich gar nicht so unerheblich, da ich über 1500-csv-Dateien habe, die ich mittels dem Pythonskript in txt-Dateien wandeln muss (und deren aufbau geänder werden muss). Da macht ein Unterschied von 3mb pro datei schon etwas aus.
Wie kann ich diesen Fehler beheben?
Danke
Gruß