将数据从变量写入字典

时间:2017-02-25 00:37:07

标签: python json file dictionary

我正在尝试创建一个文件,并使用JSON将数据从变量写入该新文件。目前,我有一个名为open_diction的变量,它是包含其他数据的文件中的大型字典。所以我试图创建一个名为open_diction_saved.json的新文件,并将open_diction中的数据写入该新文件。目前我收到错误TypeError:不是JSON可序列化

f = open ("open_diction_saved.json","w")
json.dumps(f)
f.write(open_diction)
f.close()

任何帮助都会很棒!

2 个答案:

答案 0 :(得分:1)

问题是您正在尝试序列化可写文件对象。如果您打算覆盖open_diction_saved.json,则以下代码将是您正在寻找的内容。

f = open("open_diction_saved.json", 'w')

f.write(json.dumps(open_diction)) #serialise open_diction obj, then write to file
f.close()

答案 1 :(得分:0)

你需要在write()方法中放置json.dumps():

import json

open_diction = {'a':1, 'b':2}

with open("open_diction_saved.json", "w") as f:

    f.write(json.dumps(open_diction))