我是靠谱客的博主 自信花瓣,最近开发中收集的这篇文章主要介绍python解析n叉树且不规则深度结构的树类型嵌套字典求根节点到叶子节点的路径,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

python解析n叉树且不规则深度结构的树类型嵌套字典求根节点到叶子节点的路径

a =  {
  "a": {
    "b": {
      "c": {
        "d1": "",
        "d2": "",
        "d3": {
            "e":'',
            "e1": '',
        }
      },
      "c1": {
          'd1':''
      },
    }
  },
  'a1': {
    "b1": '',
    'b2': ''
  }
}

# 结果列表
[
    ['a', 'b', 'c', 'd3', 'e'],
    ['a', 'b', 'c', 'd3', 'e1'],
    ['a', 'b', 'c', 'd1'],
    ['a', 'b', 'c', 'd2'],
    ['a', 'b', 'c1', 'd1'],
    ['a1', 'b1'],
    ['a1', 'b2']
]


l12_list = []   # 反回的数据
qwq = []        # 记录节点层级
def dg(data):
    global qwq
    l1_list = []
    for i in data:
        if isinstance(data[i], dict):
            qwq.append(i)
            dg(data[i])
            qwq = qwq[:-1]
        else:
            l1_list.append(i)
    if l1_list:
        for qwq1_i in l1_list:
            l12_list.append(qwq+[qwq1_i])
    return l12_list

print(dg(a))


# [['a', 'b', 'c', 'd3', 'e'], ['a', 'b', 'c', 'd3', 'e1'], ['a', 'b', 'c', 'd1'], ['a', 'b', 'c', 'd2'], ['a', 'b', 'c1', 'd1'], ['a1', 'b1'], ['a1', 'b2']]

最后

以上就是自信花瓣为你收集整理的python解析n叉树且不规则深度结构的树类型嵌套字典求根节点到叶子节点的路径的全部内容,希望文章能够帮你解决python解析n叉树且不规则深度结构的树类型嵌套字典求根节点到叶子节点的路径所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(78)

评论列表共有 0 条评论

立即
投稿
返回
顶部