我将 JSON 数据存储在变量中data。
data
我想把它写到一个文本文件中进行测试,这样我就不必每次都从服务器获取数据。
目前,我正在尝试这个:
obj = open('data.txt', 'wb') obj.write(data) obj.close
我收到了这个错误:
TypeError:必须是字符串或缓冲区,而不是字典
如何解决这个问题?
您忘记了实际的 JSON 部分 -data是一个字典,尚未进行 JSON 编码。像这样编写它以获得最大的兼容性(Python 2 和 3):
import json with open('data.json', 'w') as f: json.dump(data, f)
在现代系统(即 Python 3 和 UTF-8 支持)上,您可以编写一个更好的文件
import json with open('data.json', 'w', encoding='utf-8') as f: json.dump(data, f, ensure_ascii=False, indent=4)