我正在尝试将模块的输出保存到CSV文件,当我运行以下代码时出现错误,这是模块的一部分:
base_keys = ['path', 'rDATE', 'cDate', 'cik', 'risk', 'word_count']
outFile = open('c:\\Users\\ahn_133\\Desktop\\Python Project\\MinkAhn_completed2.csv','wb')
dWriter = csv.DictWriter(outFile, fieldnames=base_keys)
dWriter.writerow(headerDict)
Run Code Online (Sandbox Code Playgroud)
这是错误消息(base_keys是标题.)
return self.writer.writerow(self._dict_to_list(rowdict))
TypeError: 'str' does not support the buffer interface
Run Code Online (Sandbox Code Playgroud)
我甚至不理解错误信息是什么.我使用Python 3.3和Windows 7.
谢谢你的时间.
以二进制模式打开文件以编写csv数据在Python 3中不起作用,简单地说.你想要的是在文本模式下打开并使用默认编码或自己指定一个,即你的代码应该写成:
import csv
k = ['hi']
out = open('bleh.csv', 'w', newline='', encoding='utf8') # mode could be 'wt' for extra-clarity
writer = csv.DictWriter(out, k)
writer.writerow({'hi': 'hey'})
Run Code Online (Sandbox Code Playgroud)
现在,由于存在错误,您还需要指定newline=''何时打开此文件以写入CSV输出.
| 归档时间: |
|
| 查看次数: |
4348 次 |
| 最近记录: |