Python树形递归如何简便实现?
python 树形递归的简便方法
python 中是否提供了内置包或函数,可以轻松实现树形递归?
答案:
尽管 python 中没有直接的内置函数,但可以使用递归数据结构算法来实现树形递归。下面是一个示例代码:
立即学习“Python免费学习笔记(深入)”;
def build_tree(data, root_id=0): tree = [] for item in data: if item['fid'] == root_id: children = build_tree(data, item['id']) if children: item['children'] = children tree.append(item) return treedata = [ {"id": 1, "name": "sql", "fid": 0}, {"id": 2, "name": "sql", "fid": 1}, {"id": 3, "name": "sql", "fid": 0}, {"id": 4, "name": "sql", "fid": 3},]tree = build_tree(data)print(tree)
解释:
通过调用 build_tree 函数,可以使用自定义的递归算法将给定的数据转换为树形结构。