我将JSON数据存储在变量中data。
我想将其写入文本文件进行测试,因此不必每次都从服务器获取数据。
目前,我正在尝试:
obj = open('data.txt', 'wb') obj.write(data) obj.close
我收到此错误:
TypeError:必须是字符串或缓冲区,而不是dict
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)