問題:當我們在使用Python寫入CSV表格的時候會發現每一行數據之間會多出一個空白行?
面對這種情況,Python2
和Python3
有着不同的解決辦法。
Python2解決辦法:
在open()裏面把mode
參數設置爲wb
,這個是二進制寫入,如果你想追加就用ab
,也就是說Python2
要用二進制的格式寫入,這樣就不會有多餘的空白行了。
代碼如下:
# python2
import csv
with open('sample.csv', mode='wb') as wf:
write = csv.writer(wf)
msg = [
['name', 'pipixia'],
['id', '66']
]
write.writerows(msg) # 寫入數據到CSV表格
Python3解決辦法:
在open()裏面添加newline=''
,這樣就不會有多餘的空白行了。
代碼如下:
# python3
import csv
with open('sample.csv', mode='w', newline='') as wf:
write = csv.writer(wf)
msg = [
['name', 'pipixia'],
['id', '66']
]
write.writerows(msg) # 寫入數據到CSV表格