习题:将source字典扁平化,输出为 target 格式的字典。
source = {'a': {'b': 1, 'c': 2}, 'd': {'e': 3, 'f': {'g': 4}}}
target = {'a.b': 1, 'd.f.g': 4, 'd.e': 3, 'a.c': 2}

def func(src, targetkey='' ):
    for k, v in src.items():
        if isinstance(v, dict):
            func(v, targetkey=targetkey + k + '.')
        else:
            target[targetkey + k] = v

func(source)
print(target)


利用isinstance判断是否是字典,是的继续递归,否则合并key,赋值新字典。


相关文章:

  • 2022-01-16
  • 2022-12-23
  • 2022-12-23
  • 2021-12-12
  • 2021-11-23
  • 2022-02-08
  • 2021-09-18
  • 2021-11-08
猜你喜欢
  • 2021-10-30
  • 2021-06-24
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-05-23
相关资源
相似解决方案