ope*_*guy 7 python csv python-2.7
我有一个这样的代码在 python 中编写 csv 文件
import csv
with open('eggs.csv', 'wb') as csvfile:
spamwriter = csv.writer(csvfile, delimiter=' ',
quotechar='|', quoting=csv.QUOTE_MINIMAL)
spamwriter.writerow(['Spam'] * 5 + ['Baked Beans'])
spamwriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam'])
Run Code Online (Sandbox Code Playgroud)
输出如图所示。现在 output (line 3) 中多了一行。如何在写入 csv 文件时删除最后一个空行。
使用file.seek
到移动文件指针前的最后一个\r\n
,然后使用file.truncate
。
import os
import csv
with open('eggs.csv', 'wb') as csvfile:
spamwriter = csv.writer(csvfile, delimiter=' ',
quotechar='|', quoting=csv.QUOTE_MINIMAL)
spamwriter.writerow(['Spam'] * 5 + ['Baked Beans'])
spamwriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam'])
csvfile.seek(-2, os.SEEK_END) # <---- 2 : len('\r\n')
csvfile.truncate() # <----
Run Code Online (Sandbox Code Playgroud)
注意:-2
如果您使用不同的lineterminator
. 我使用-2
因为 \r\n
是默认的换行符。
归档时间: |
|
查看次数: |
7998 次 |
最近记录: |