【发布时间】:2021-12-08 08:01:01
【问题描述】:
我有一些如下所示的 JSON 响应
{
"response": {
"list": [
{
"key1": "val1",
"key2": "val2"
},
{
"key3": "val3",
"key4": ""
}
],
"data": {
"key5": "val5",
"key6": "",
"key7": "val7"
},
"key8": "val8",
"key9": "val9",
"key10": "",
"key10": "val10"
}
}
某些 JSON 响应可能是完全不同的结构。有些可能有更多的内部列表和字典,有些可能是一个简单的平面 json 我需要用 Null/None 值替换所有空字符串 ("")。 我不确定如何在替换值时遍历未知的 JSON。
任何帮助将不胜感激
【问题讨论】:
-
你不会改变 json。使用 json.loads 将其加载到 python 数据结构中,在那里进行更改,然后覆盖整个 json 文件。这是中间步骤的类似内容:stackoverflow.com/questions/42095393/…
-
使用
jq,可以简单地编写类似jq 'walk(select(.=="")|=null)' tmp.json的内容。存在Python bindings for thejqlibrary 可以让你做类似的事情。
标签: python json dictionary