Python从字典生成指定结构嵌套列表的问题求解
问题原因
原代码未对每个顶级key对应的处理结果做分组,所有生成的字典对象直接追加到总列表中,因此缺少外层的分组嵌套。
修改后的代码
data = { "abc": [{"cba": "cab", "lmn": "mnl"}], "def": [{"fed": "fde", "opq": "poq", "rst": "tsr", "jkl": "klj"}], "ghi": [{"xyz": "zxy", "uvw": "vuw"}], "etag": "W/ABCDXYZ" } result = [] # 遍历每个顶级键 for top_key, top_val in data.items(): # 为当前顶级键创建分组子列表 group = [] if isinstance(top_val, list): # 取出列表中的嵌套字典 inner_dict = top_val[0] for k, v in inner_dict.items(): group.append({top_key: {k: v}}) else: group.append({top_key: top_val}) # 把当前分组加入总结果 result.append(group) print(result)
输出验证
运行上述代码得到的输出和要求的目标完全一致:
[ [{'abc': {'cba': 'cab'}}, {'abc': {'lmn': 'mnl'}}], [{'def': {'fed': 'fde'}}, {'def': {'opq': 'poq'}}, {'def': {'rst': 'tsr'}}, {'def': {'jkl': 'klj'}}], [{'ghi': {'xyz': 'zxy'}}, {'ghi': {'uvw': 'vuw'}}], [{'etag': 'W/ABCDXYZ'}] ]
内容的提问来源于stack exchange,提问作者arjay0601
相关产品推荐
相关产品推荐

