问题:当我们在使用Python写入CSV表格的时候会发现每一行数据之间都会多出一个空白行?
面对这种情况,Python2
和Python3
有着不同的解决办法。
Python2解决办法:
在open()里面把mode
参数设置为wb
,使用二进制的格式写入,这样就不会有多余的空白行了。
代码如下:
# python2
import csv
__author__ = 'Evan'
with open('sample.csv', mode='wb') as wf:
write = csv.writer(wf)
msg = [
['name', 'Evan'],
['id', '77']
]
write.writerows(msg) # 写入数据到CSV表格
Python3解决办法:
在open()里面添加newline=''
,这样就不会有多余的空白行了。
代码如下:
# python3
import csv
__author__ = 'Evan'
with open('sample.csv', mode='w', newline='') as wf:
write = csv.writer(wf)
msg = [
['name', 'Evan'],
['id', '77']
]
write.writerows(msg) # 写入数据到CSV表格