【发布时间】:2014-02-15 05:22:32
【问题描述】:
一个初学者 Python/编程问题...我想在 Python 中构建一个树形结构,最好基于字典。我发现代码可以巧妙地做到这一点:
Tree = lambda: collections.defaultdict(Tree)
root = Tree()
这可以很容易地填充为:
root['toplevel']['secondlevel']['thirdlevel'] = 1
root['toplevel']['anotherLevel'] = 2
...etc.
我想动态填充关卡/叶子,以便我可以根据需要添加任意多的关卡,并且叶子可以在任何关卡的位置。我该怎么做?
非常感谢任何帮助。
【问题讨论】:
-
您可以按原样使用此代码。您可以根据需要添加任意数量的级别。你到底有什么问题?
-
我不知道我之前有多少关卡,所以我希望能够动态添加它们而不是硬编码它们
-
这是递归人,你试过我的答案吗?您所要做的就是将对象类型从标准对象更改为字典
-
你能举个例子说明你想写什么样的代码,或者你想把一些输入处理成树吗?
标签: python recursion dictionary