csv.writer写入文件有多余的空行
2017-02-09 14:00
435 查看
在用csv.writer写入文件的时候发现中间有多余的空行。
最早打开方式只是‘w’,会出现多余的空行,网上建议使用binary形式‘wb’打开可以解决问题:
不过只能在python2下运行,python3报错:
有人建议用encode(‘utf-8’)编码转变格式,但是觉得还是比较繁琐,因为list也不支持直接的编码。
再找了一圈,找到的最佳解释:
这里python2和3的问题和解决方法都给出了。
最早打开方式只是‘w’,会出现多余的空行,网上建议使用binary形式‘wb’打开可以解决问题:
with open('egg2.csv', 'wb') as cf:
不过只能在python2下运行,python3报错:
TypeError: a bytes-like object is required, not 'str'
有人建议用encode(‘utf-8’)编码转变格式,但是觉得还是比较繁琐,因为list也不支持直接的编码。
再找了一圈,找到的最佳解释:
python2.x中写入CSV时,CSV文件的创建必须加上'b'参数,即csv.writer(open('test.csv','wb')),不然会出现隔行的现象。网上搜到的解释是:python正常写入文件的时候,每行的结束默认添加'n’,即0x0D,而writerow命令的结束会再增加一个0x0D0A,因此对于windows系统来说,就是两行,而采用’ b'参数,用二进制进行文件写入,系统默认是不添加0x0D的。 而python3.x中换成采用newline=''这一参数来达到这一目的。
这里python2和3的问题和解决方法都给出了。
最后
python3下的正确代码:with open('egg2.csv', 'w', newline='') as cf:
相关文章推荐
- csv.writer写入文件有多余的空行
- 解决csv.writer写入文件有多余的空行问题
- 关于python3中写入csv文件多余空行
- csv的writerow写入的文件会有空行很蛋疼
- python使用writerows写csv文件产生多余空行
- python读取CSV文件以及“写入CSV致文件每一行后面会多一个空行”问题解决
- C# SaveFileDialog +FileStream+StreamWriter 创建或者覆盖一个文件,并且写入
- php将数据写入xls或csv文件里
- PHP读取、写入、删除CSV文件的操作
- Java从.CSV文件中读取数据和写入
- 数据写入到csv文件或者通过浏览器导出到下载文件
- 使用EditPlus 删除文本文件中多余的空行 和 EditPlus 选择列
- .NET(C#)中将DataTable内容写入到CSV文件 与 将CSV文件内容读取到DataTable中(原创)
- 视频中直线像素采样(cvInitLineIterator )把每个像素点的三个值写入csv文件中
- CSV文件写入数据规则
- 写入数据java将数据写入到csv文件
- php对csv文件的读取,写入,输出下载操作
- php对csv文件的读取,写入,输出下载操作
- 写入文件 csv 与 xls的区别
- php对csv文件的读取,写入,输出下载操作详解