python TypeError: ‘newline’ is an invalid keyword argument for this function 错误解决

 最近在学习用python解析csv文件,使用如下代码时出现如题的错误

import csv, os
def write_csv():
os.chdir(r’D:\test_python\csv-json’)
outputFile = open(‘output1.csv’, ‘w’, newline=”) # error line
outputWriter = csv.writer(outputFile)
outputWriter.writerow([‘this’, ‘is’, ‘a’, ‘test’])
outputWriter.writerow([‘hello, world!’, ‘i’, ‘am’, ‘jack’])
outputWriter.writerow([22, 44, 66, 888])

outputFile.close()
代码参照《python编程快速上手-让繁琐工作自动化》,文中解释使用newline=”是为了避免行距两倍的情况。

后在网上查找解决方法,其中一种方法是把error line那行修改为:

outputFile = open(‘output1.csv’, ‘wb’)  # ‘w’ —> ‘wb’
实测代码正确,且文档内容不是双倍行距。
 

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注