我现在使用的是CSV包,每次当我写一个新的CSV文件,用Excel打开它,我会发现每两行之间有一个空行。
filereader = csv.reader(open("tests.csv", "r"), delimiter=",")
filewriter = csv.writer(open("test_step1.csv", "w"), delimiter=",")
#Delete header
for row in filereader:
if row[0].isdigit():
filewriter.writerow(row)
字符串
的数据
5条答案
按热度按时间ahy6op9u1#
你需要在浏览器模式下打开文件,尝试:
字符串
csv.writer直接将**\r\n写入文件。
如果您不以二进制模式打开文件,它将写入\r\r\n**,因为在Windows文本模式下,将每个**\n转换为\r\n**。
编辑:
对于python 3,必须按照this answer将
newline=""
添加到csv.writer中nzrxty8p2#
我正在使用
Python 3.6
,似乎csv.writer(open("test_step1.csv", "wb"), delimiter=",", newline="")
是不正确的,应该在
open()
子句中加上newline=""
。798qvoo83#
请注意,Windows中的csv 1.0(需要'\n')和MAC OS(可选)。下面的代码将输出.csv文件,下一行之间没有空格。它适用于MAC和Windows。
字符串
xzabzqsa4#
只需在打开文件的位置添加newline=''即可。这对我很有效。例如,csvFileName = open('file. csv','w',newline='')
ztyzrc3y5#
对于那些使用
pandas.DataFrame
的,使用lineterminator
删除行之间的空格,使用'.write('\n')在DataFrame
之间添加空格。字符串
原始答案here