使用csv.DictWriter写入CSV时数据行间出现空行的问题求助
解决CSV写入时行之间存在空行的问题
嘿,这个问题我之前也碰到过!原因其实是在Windows系统下,用默认的w模式打开文件时,csv模块的换行处理和文本模式的自动转换冲突了,导致每两行之间多出一个空行。
要解决这个问题很简单,只需要在打开文件的时候加上newline=''参数,让csv模块自己来处理换行逻辑就行。修改后的代码如下:
import csv with open('example4.csv', 'w', newline='') as csvfile: fieldnames = ['first_name', 'last_name', 'Grade'] writer = csv.DictWriter(csvfile, fieldnames=fieldnames) writer.writeheader() writer.writerow({'Grade': 'B', 'first_name': 'Alex', 'last_name': 'Brian'}) # 这里可以继续添加其他writerow语句
这个newline=''参数是Python 3专门为处理CSV文件设计的,它会告诉系统不要自动转换换行符,让csv模块按照CSV标准来处理换行,这样不管是在Windows还是Linux/macOS系统下,生成的CSV文件都不会出现多余的空行啦。
内容的提问来源于stack exchange,提问作者Nguyễn Nam
相关产品推荐
相关产品推荐

