。根据上面的代码,一棵树就是一个默认值也为树的字典。

具体效果演示

有着这样特性被实现的树, 存在着两点令人称奇的地方, 其中之一是, 我们能够加以直接引用, 而无需去创建节点, 像这样子, 举例而言:

users = tree()

users

''

''

= ''

users

''

= 'Guido van '

倘若只是单单依据常规字典所具备的特性来讲, 上面那进行的赋值操作是没办法成立的, 这是由于我们一定要事先去声明users。

''

= {}。

而是我们所加以利用的乃是模块之中的类, 要是某一个键并不存在之际, 它便会籍由tree()去为该键缔造一个初始的值, 鉴于tree是所予以的。依照文档的阐述, 若提供了该参数, 参数的值便会传递给构造器当作第一个参数。

Python树_tree defaultdict Autovivification

要是我们以json格式去打印上面代码的话, 也就是借助print(json.dumps(users))这种方式, 我们会得到下面这样的结果:

{"": {"": ""},

"": {"": "Guido van "}}

树的创建方式, 第二点在于, 我们甚至无需开展像处于上面那种情况的赋值运作, 仅仅凭借引用, 便能够达成一棵树的创建。比如:

= tree()

' '

' '

' '

要是我们继续去运行print(json.dumps()), 那么便会得到如下的结果:

你提供的内容似乎并不是一个句子, 请提供正确的句子以便我进行改写。

" ": {"": {}}}

还有第二个奇妙的地方, 它也被叫做, 这个特性最初是在Perl里头出现的, 讲的是当某个数组被引用之际会自动创建出那个数组。它自身原本是不支持这个特性的, 不过能够借助本文所讲述的方式去模仿。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐