【发布时间】:2018-01-08 18:53:45
【问题描述】:
我试图运行这段代码:
txt_file = r"Fun.txt"
in_txt = csv.reader(open(txt_file, "rb"), delimiter = '\t')
csv_file = r"NewProcessedDoc.csv"
with open(csv_file, 'w', newline ='') as csvfile:
swriter = csv.writer(csvfile, delimiter = ' ')
swriter.writerow(in_txt)
print('done! Check NewProcessedDoc.csv file')
但有一个错误:
swriter.writerow(in_txt)
Error: iterator should return strings, not bytes (did you open the file in text mode?)
有人可以帮忙吗? 谢谢!
【问题讨论】:
-
你注意到你在
"rb"打开你in_txt是二进制模式吗? -
正如@MoinuddinQuadri 所说,您的错误在于阅读模式。将其更改为
in_txt = csv.reader(open(txt_file, "r"), delimiter = '\t')。 -
非常感谢,它是二进制模式,通过在普通模式下读取,我得到了 csv 文件。
标签: python