python`csv`库。writerows([';a';,';b';])正在csv中放入两行
我只是试着把一行放到csv文件中python`csv`库。writerows([';a';,';b';])正在csv中放入两行,python,python-3.x,csv,Python,Python 3.x,Csv,我只是试着把一行放到csv文件中 with open("output.csv", "wb") as f: writer = csv.writer(f) writer.writerows(['a', 'b') 预期CSV输出 [a, b] [a] [b] 实际CSV输出 [a, b] [a] [b] writerows()将输入iterable中的每个元素作为新行写入 如果您想要一行“a,b”,请在列表中添加额外的嵌套级别: with open("output.csv",
with open("output.csv", "wb") as f:
writer = csv.writer(f)
writer.writerows(['a', 'b')
预期CSV输出
[a, b]
[a]
[b]
实际CSV输出
[a, b]
[a]
[b]
writerows()
将输入iterable中的每个元素作为新行写入
如果您想要一行“a,b”,请在列表中添加额外的嵌套级别:
with open("output.csv", "wb") as f:
writer = csv.writer(f)
writer.writerows([['a', 'b']])
此外,如果您只想写一行,您可以按照TeeKea在回答中的建议,使用writerow()
writerows(iterable)
的基本功能如下:
for item in iterable:
writer.writerow(item)
首先,如果您将
['a',b']
提供给writerows
,您应该会得到以下错误:
_csv.错误:应为iterable,而不是int
其次,如果您使用wb
模式打开文件,则在向其写入列表时,还应出现以下错误:
TypeError:需要类似字节的对象,而不是“str”
因此,要将列表['a',b']
写入csv文件,您可能需要以w
模式打开文件,并使用writerow
而不是writerows
,如下所示:
with open("output.csv", "w") as f:
writer = csv.writer(f)
writer.writerow(['a', 'b'])
“b”后面缺少一个括号