Python read csv - Stückliste in den ersten Schlüssel eingebettet
Ich verwende Python 2.7.12. Mit diesem Code-Snippet speichere ich eine utf-8 csv-Datei. Ich habe die Stückliste am Anfang der Datei geschrieben.
import codecs
import csv
outputFile = open("test.csv", "wb")
outputFile.write(codecs.BOM_UTF8)
fieldnames = ["a", "b"]
writer = csv.DictWriter(outputFile, fieldnames, delimiter=";")
writer.writeheader()
row = dict([])
for i in range(10):
row["a"] = str(i).encode("utf-8")
row["b"] = str(i*2).encode("utf-8")
writer.writerow(row)
outputFile.close()
Ich möchte diese CSV-Datei laden:
import codecs
import csv
inputFile = open("test.csv", "rb")
reader = csv.DictReader(inputFile, delimiter=";")
for row in reader:
print row["a"]
inputFile.close()
Der obige Code wird fehlschlagen:KeyError: 'a'
Wenn ich die Zeilentasten drucke, sehen sie so aus:[u'\ufeffa', u'b']
. Die Stückliste wurde in den Schlüssel @ eingebettea
. Was mache ich falsch