版权声明:学习技术是很辛苦的,希望转载文章的时候能注明下来源,做一个乐于分享的人:)。 https://blog.csdn.net/jishuzhain/article/details/83576811
问题
自己使用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,导致多余的空行。