csv.py TypeError 'str' does not support the buffer interface
Verfasst: Freitag 15. April 2011, 23:10
In Python 2.7 geht's, in Python 3.2 nicht mehr, ich kann mir das nicht erklären. Ich habe mittlerweile 3 Tage recherchiert und keine Lösung geunden. Der Fehler kommt reproduzierbar. De facto kann ich das csv-Modul in Python 3 nicht mehr benutzen. Vielleicht habt ihr eine Idee?
Beispiel-Code:
Fehler:
Beispiel-Code:
Code: Alles auswählen
import csv
fieldnames = ["name", "color"]
row1 = ["John", "blue"]
row2 = ["Jane", "pink"]
filename = "out.csv"
f = open(filename, "wb")
w = csv.DictWriter(f, fieldnames)
header = dict(zip(fieldnames, fieldnames))
rows = [dict(zip(fieldnames, row)) for row in [row1, row2]]
w.writerow(header)
w.writerows(rows)
f.close()Code: Alles auswählen
Traceback (most recent call last):
File "csvtest.py", line 14, in <module>
w.writerow(header)
File "C:\Python32\lib\csv.py", line 153, in writerow
return self.writer.writerow(self._dict_to_list(rowdict))
TypeError: 'str' does not support the buffer interface