用Python写入CSV添加空白行

我正在尝试写入CSV文件,但之间有空行。 我怎样才能删除空白行?

import csv b = open('test.csv', 'w') a = csv.writer(b) data = [['Me', 'You'],\ ['293', '219'],\ ['54', '13']] a.writerows(data) b.close() 

您在Python 3中使用csv模块的方式在很多方面(docs)都是变化的 ,至less在您需要如何打开文件方面。 无论如何,像

 import csv with open('test.csv', 'w', newline='') as fp: a = csv.writer(fp, delimiter=',') data = [['Me', 'You'], ['293', '219'], ['54', '13']] a.writerows(data) 

应该工作。

如果您在Windows上使用Python 2.x,则需要将行open('test.csv', 'w') open('test.csv', 'wb') 。 那就是你应该打开一个二进制文件的文件 。

但是,正如其他人所说的那样,Python 3.x中的文件接口已经改变了。

 import csv hello = [['Me','You'],['293', '219'],['13','15']] length = len(hello[0]) with open('test1.csv', 'wb') as testfile: csv_writer = csv.writer(testfile) for y in range(length): csv_writer.writerow([x[y] for x in hello]) 

会产生这样的输出

 Me You 293 219 13 15 

希望这可以帮助

您需要以二进制b模式打开该文件,以处理Python 2中的空白行。这在Python 3中不是必需的。

所以,改变open('test.csv', 'w') open('test.csv', 'wb')

Pyexcel在Python2和Python3上都可以很好地工作。

用pip快速安装:

 pip install pyexcel 

之后,只有3行代码和工作完成:

 import pyexcel data = [['Me', 'You'], ['293', '219'], ['54', '13']] pyexcel.save_as(array = data, dest_file_name = 'csv_file_name.csv')