小编典典

如何将 JSON 数据写入文件?

all

我将 JSON 数据存储在变量中data

我想把它写到一个文本文件中进行测试,这样我就不必每次都从服务器获取数据。

目前,我正在尝试这个:

obj = open('data.txt', 'wb')
obj.write(data)
obj.close

我收到了这个错误:

TypeError:必须是字符串或缓冲区,而不是字典

如何解决这个问题?


阅读 214

收藏
2022-02-25

共1个答案

小编典典

您忘记了实际的 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)
2022-02-25