解决csv.writer写入文件有多余的空行问题

 更新时间:2018年07月06日 09:34:06   作者:灰太狼_1991  
今天小编就为大家分享一篇解决csv.writer写入文件有多余的空行问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

在用csv.writer写入文件的时候发现中间有多余的空行。

最早打开方式只是‘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写入文件有多余的空行问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python使用OpenCV对图像进行缩放功能

    Python使用OpenCV对图像进行缩放功能

    这篇文章主要介绍了Python使用OpenCV对图像进行缩放功能,文中给大家提到了两种调用方式及OpenCV中pryUp和pryDown的用法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • Python列表元素删除和remove()方法详解

    Python列表元素删除和remove()方法详解

    这篇文章主要给大家介绍了关于Python列表元素删除和remove()方法的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • 浅谈Python pygame绘制机制

    浅谈Python pygame绘制机制

    今天给大家带来的是关于Python的相关知识,文章围绕着Python pygame绘制机制展开,文中有非常详细的介绍及图文示例,需要的朋友可以参考下
    2021-06-06
  • 用Python写一个自动木马程序

    用Python写一个自动木马程序

    这篇文章主要介绍了用Python写一个自动木马程序的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09
  • Python使用Selenium自动进行百度搜索的实现

    Python使用Selenium自动进行百度搜索的实现

    我们今天介绍一个非常适合新手的python自动化小项目,这个例子非常适合新手学习Python网络自动化,不仅能够了解如何使用Selenium,而且还能知道一些超级好用的小工具。感兴趣的可以了解一下
    2021-07-07
  • Python中关于字符串对象的一些基础知识

    Python中关于字符串对象的一些基础知识

    这篇文章主要介绍了详解Python中的字符串对象,关于字符串的操作和特性是Python学习当中的基础知识,需要的朋友可以参考下
    2015-04-04
  • 使用豆瓣源来安装python中的第三方库方法

    使用豆瓣源来安装python中的第三方库方法

    这篇文章主要介绍了使用豆瓣源来安装python中的第三方库方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • python中实现迭代器(iterator)的方法示例

    python中实现迭代器(iterator)的方法示例

    我们经常需要遍历一个对象中的元素,在Python中这种功能是通过迭代器来实现的。下面这篇文章主要给大家介绍了python中实现迭代器(iterator)的方法示例,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-01-01
  • PyCharm永久激活方式(推荐)

    PyCharm永久激活方式(推荐)

    这篇文章主要介绍了PyCharm永久激活方式,本文通过图文并茂的方式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03
  • python通过线程实现定时器timer的方法

    python通过线程实现定时器timer的方法

    这篇文章主要介绍了python通过线程实现定时器timer的方法,涉及Python线程与定时器timer的使用技巧,需要的朋友可以参考下
    2015-03-03

最新评论