Python csv檔案空行問題解決
阿新 • • 發佈:2018-11-01
問題
自己使用csv庫,寫入內容時,會增加多餘的空行。
import csv
vul_rows = ['xxx', 'xxx', 'xxx', 'xxx', 'xxx', 'xxx']
with open("date.csv", "a+") as csvfile:
writer = csv.writer(csvfile)
writer.writerow(vul_rows)
csvfile.close()
查了下資料,以下是參考的文章。
Python中通過csv的writerow輸出的內容有多餘的空行
將 a+ 改成 ab+ 以二進位制模式開啟。
import csv
vul_rows = ['xxx', 'xxx', 'xxx', 'xxx', 'xxx', 'xxx']
with open("date.csv", "ab+") as csvfile:
writer = csv.writer(csvfile)
writer.writerow(vul_rows)
csvfile.close()
就能解決了
總結
Python中的csv的writer,開啟檔案的時候,要通過binary模式去開啟,即帶b的,比如wb,ab+等。而不能通過文字模式,即不帶b的方式,w、w+、a+等,否則,會導致使用writerow寫內容到csv中時,產生對於的CR,導致多餘的空行。