我的Python脚本的输出为JSon格式,我想将JSon写入文件中。
我用
df_json.to_json(orient='records')
with open('JSONData.json', 'w') as f:
json.dump(df_json, f)
我有以下错误:
raise TypeError(repr(o) + " is not JSON serializable")
[1746 rows x 2 columns] is not JSON serializable
我不知道我在做什么错。
我的JSon输出如下:
[
{
"id": 1,
"results": [
1,
2,
3
]
},
{
"id": 558599,
"results": [
4,
5,
6
]
}
]
先感谢您。
最佳答案
您正在呼叫df_json.to_json(orient='records')
,但不使用结果。对象不会将自身变异为jsonisable对象。
序列化原始对象显然是行不通的(或者上面没有to_json
方法)
由于字符串已经是json
,所以您甚至不需要json
模块(或者json
会尝试再次序列化字符串,这不是您想要的):只需执行以下操作:
f.write(df_json.to_json(orient='records'))