我正在尝试创建一个文件,并使用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()
任何帮助都会很棒!
答案 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))