在以下情况下,我会从json响应中提取数据:
我正在遍历json并在active
active
下找到true
的值,然后在同一父数组下在cls
type
下找到{{ 1}}为type
,返回alpha1
值(在这种情况下为260551)。
如果在遍历json后没有eces
作为active
的值,或者active的值为true
但在true
下的同一父数组中不是{{1} },然后返回未找到。
在这里,我正确地获取了cls
的值,但是我又如何获取这些字段的值alpha1
,eces
,address
,{{1 }},然后为所有提取的数据构造一个键值映射,并保存在json文件中。
这是我尝试过的:
c_m
所需的json输出:
active
我被困在以这种结构创建json数据的过程中,任何帮助都会很棒。
答案 0 :(得分:0)
虽然我建议以某种适当的方式重构此代码,但这将以非常直接的方式创建一个映射:
import json
dump = []
for di in d:
if di.get('active', False):
for cl in di.get('cls', []):
if cl.get('type') == 'alpha1':
dump.append(
{
"res1": [{
"eces": di['eces'],
"res2": [{
"c_m": di['c_m'],
"clsfrmt": [
{
"address": di['cls'][0]['address'],
"type": di['cls'][0]['type']
}
],
"active": di['active']
}]
}]
}
)
s = json.dumps(dump) # this is your JSON string