码迷,mamicode.com
首页 > 编程语言 > 详细

Python学习中,当使用writerow时输出多余的空行解决方法

时间:2018-12-11 00:43:50      阅读:503      评论:0      收藏:0      [点我收藏+]

标签:tor   效果   文件的   byte   参数   为我   span   erro   file   

今天在学习用Python进行CSV文件存储

当我以csv格式写入文件的时候,文件读取的时候出现了多余的空行,代码:

1 import csv
2 
3 with open(data.csv, w) as csvfile:
4     writer = csv.writer(csvfile)
5     writer.writerow([id, name, age])
6     writer.writerow([10001, Mike, 20])
7     writer.writerow([10002, Bob, 22])
8     writer.writerow([10003, Jordan, 21])

出现空行的结果:

技术分享图片

经过网上的资料查阅后,问题产生的原因是csv输出的效果是行末是CR,然后是一个CRLF的换行符,网上给出的解决方法是将写入格式改为binary模式。

但我运行后却报出这样的错误:TypeError: a bytes-like object is required, not ‘str‘ ,因为我写入的是字符串数据,于是我采取了另一种解决方法:

在加一个csv.writer中加入linwterminator=‘\n‘的参数,修改后的代码为:

1 import csv
2 
3 with open(data.csv, w) as csvfile:
4     writer = csv.writer(csvfile, lineterminator=\n)
5     writer.writerow([id, name, age])
6     writer.writerow([10001, Mike, 20])
7     writer.writerow([10002, Bob, 22])
8     writer.writerow([10003, Jordan, 21])

此时创建的csv文件没有了多余的空行:

技术分享图片

Python学习中,当使用writerow时输出多余的空行解决方法

标签:tor   效果   文件的   byte   参数   为我   span   erro   file   

原文地址:https://www.cnblogs.com/yyyc/p/10099864.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!