最近在学习用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’
实测代码正确,且文档内容不是双倍行距。