我正在遍历一个很大的嵌套字典(最初是json)来重命名某些键。此刻,我设法逐一遍历列表内的字典中的列表中的每个元素(位于另一个字典中)。对于主字典(json)中的每个项目,列表中的元素数量都不同。
以下内容有效,但不可扩展。
for el in a:
el['name']['info'][0]['details'] = el['name']['info'][0].pop('DT')
el['name']['info'][1]['details'] = el['name']['info'][1].pop('DT')
我也尝试过此操作,但似乎不起作用
for el in a:
el['name']['info']['details'] = el['name']['info'].pop('DT')
我在那里可以写些什么将更改应用于这些词典列表中的所有元素吗?
答案 0 :(得分:1)
扩展TrebledJ在他的评论中所说的内容将为您提供以下信息:
a = [{
'name': {
'info': [
{'DT': 'abc'},
{'DT': 'def'}
]
}
}]
print(a)
for el in a:
for info_el in el['name']['info']:
info_el['details'] = info_el.pop('DT')
print(a)
具有输出:
[{'name': {'info': [{'DT': 'abc'}, {'DT': 'def'}]}}]
[{'name': {'info': [{'details': 'abc'}, {'details': 'def'}]}}]