我一直试图将list放入csv文件中,但它不是将整个单词作为输入而是一个字母,并将每个字母插入单独的单元格中
import csv
data = {}
with open('test.csv','w',newline='') as fp:
a = csv.writer(fp,delimiter=',')
data = ['sales','tax']
a.writerows(data)
输出为:
s a l e s t a x
每个字母在单独的单元格中
我需要如下输出:
Sales Tax
答案 0 :(得分:5)
.writerows()
(复数)需要代表多个行的列表列表(或更准确地说,是一个可迭代的可迭代对象)。使用.writerow()
(单数)传递表示一行的单个列表。
为了解释您当前的输出...因为字符串是可迭代的,所以字符串列表看起来像是可迭代的可迭代对象,但是与.writerows()
一起使用时,每一列最终都是单个字母。
答案 1 :(得分:3)
data = ['sales','tax']
a.writerows(data)
将data
视为行列表,而不是单行。试试
data = [['sales', 'tax']]
a.writerows(data)
data
是包含单个列表(行)的列表。
或
data = ['sales', 'tax']
a.writerow(data) # note row not rows
只写一行。