1. 程式人生 > >Python csv檔案空行問題解決

Python csv檔案空行問題解決

問題

自己使用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,導致多餘的空行。