我正在运行这段代码[自我解释]:
import csv
word_list = ["Hello1;;;;World1", "Hello2;;;;World2"]
with open('words.csv', 'w') as new_file:
csv_writer = csv.writer(new_file, delimiter=',')
for line in word_list:
csv_writer.writerow(line.split(';;;;')[0] + "\t" + line.split(';;;;')[1])
我希望csv是:
Hello1, ,World1
Hello2, ,World2
我得到了:
H,e,l,l,o,1, ,W,o,r,l,d,1
H,e,l,l,o,2, ,W,o,r,l,d,2
怎么了?
答案 0 :(得分:3)
writerow
需要迭代。在您的代码中,这是由
line.split(';;;;')[0] + "\t" + line.split(';;;;')[1]
对该字符串进行迭代,将其中的每个项目(=每个字符)放入一个单元格中。
尝试
csv_writer.writerow([line.split(';;;;')[0], "\t", line.split(';;;;')[1]])