python3 调csv模块的writer.writerow方法出现多余空白行的解决方案

# 问题

调csv模块的writer.writerow方法,csv文件的每写一行数据,均出现了空白行

# 解决方法

调open方法时带上参数newline=''即可

with open(r"../output/test.csv", "w", newline='') as f:
    writer = csv.writer(f)
    writer.writerow(['id', 'requiredResources', 'optionalResources'])

# 原因

一开始一直百思不得其解,翻看python的官方文档后,找到了答案,解答如下

 

通用换行处理方法如下

 

# 总结

此时告诉我们,其实往往官方文档菜是最好的老师,遇到问题不妨多翻翻官方文档,可能往往会有意想不到的收获

 

一种解读文本流的方式,将以下所有符号都识别为行结束标志:Unix 的行结束约定 '\n'、Windows 的约定 '\r\n' 以及旧版 Macintosh 的约定 '\r'。参见 PEP 278 和 PEP 3116 和 bytes.splitlines() 了解更多用法说明。

posted @ 2019-12-31 16:00  gongbaojiding  阅读(3426)  评论(0编辑  收藏  举报