Das untenstehende Problem wurde vorübergehend behoben. Ich habe herausgefunden, dass die Eingabedatei (csv) Sonderzeichen (z. B. Aimí ©) hat, die zu dem Fehler führten. Ich ändere jetzt manuell die Charaktere (z. B. Aimí © -> Aime).self.encoding_errors & I/O-Vorgang bei geschlossener Datei
Vorherige Frage:
ich unicodecsv
verwende, während in eine CSV-Datei zu schreiben. Mein Programm lief reibungslos, bis ich den folgenden Fehler fand. Könnte jemand helfen?
Code:
import unicodecsv as csv
output_csv_write = open(csv_file_name_write,'w')
csv_file_write = csv.writer(output_csv_write, encoding='utf-8')
csv_file_write.writerow([An array of info])
Erster Fehler:
UnicodeDecodeError: 'utf8' codec can't decode bytes in position 3-4: unexpected end of data
Nach dem obigen Fehler zu sehen, ich versuche durch zu debuggen ausgeführt wird:
csv_file_write.writerow(['A','B','C'])
und ich erhielt den zweiten Fehler als unten:
84 def writerow(self, row):
85 return self.writer.writerow(
---> 86 _stringify_list(row, self.encoding, self.encoding_errors))
87
88 def writerows(self, rows):
ValueError: I/O operation on closed file
Ich bekomme diesen Fehler nicht in Python 2.7.6, Unicodecsv 0.14.1. –
@ Robᵩ Meine Entschuldigung. Ich habe gerade gemerkt, dass es passiert ist, nachdem ich auf ein anderes Problem gestoßen bin. Ich ändere meine Frage, um mehr Details zur Verfügung zu stellen. –
Bitte geben Sie das kürzeste ** vollständige ** Programm an, das den Fehler anzeigt, den Sie haben. Da der Fehler datenabhängig ist, fügen Sie bitte einen kurzen Beispielsatz ein, der den Fehler verursacht. Siehe [mcve] für weitere Informationen. –