Python通过闭包实现将嵌套字典转换为一个字典
def nested_dict_2_dict(nested_dict):
"""
嵌套字典转化为字典(闭包实现)
形如:
转化前:{"a": {"name": "张三", "friends": {"name": "lisi"}},"b": 20}
转化后:{'a.name': '张三', 'a.friends.name': 'lisi', 'b': 20}
:param nested_dict: 带转化的字段
:return:
"""
res = {}
def split(d, key=None):
for k, v in d.items():
k = f"{key}.{k}" if key else k
if isinstance(v, dict):
split(v, k)
else:
res[k] = v
split(nested_dict)
return res
好记性不如烂笔头!
浙公网安备 33010602011771号