以下问题暂时得到解决。我发现输入文件(csv)有特殊字符(例如Aimí©)导致错误。我现在手动更改字符(例如Aimí© - > Aime)。
上一个问题:
我在写入csv文件时使用unicodecsv
。我的程序运行顺利,直到遇到以下错误。有人可以帮忙吗?
代码:
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])
第一个错误:
UnicodeDecodeError: 'utf8' codec can't decode bytes in position 3-4: unexpected end of data
看到上述错误后,我尝试运行:
进行调试 csv_file_write.writerow(['A','B','C'])
我收到第二个错误如下:
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
答案 0 :(得分:1)
尝试以下方法:
import unicodecsv as csv
with open(csv_file_name_write, "wb") as f:
writer = csv.writer(f, encoding="utf-8")
writer.writerow(["A", "B", "C"])
如果这不能解决您的问题,不幸的是,我无法帮助您,因为这可以在我的机器上运行。