如何进行高级Python哈希自动修复?

Zha*_*g18 10 python autovivification data-structures

这个问题是关于在Python中实现完整的Perl自动修改.我知道之前提出过类似的问题,到目前为止,最好的答案是" 在Python中实现嵌套字典的最佳方法什么? ".但是,我希望这样做:

a['x']['y'].append('z')
Run Code Online (Sandbox Code Playgroud)

没有a['x']['y'] = []首先声明,或者更确切地说,没有声明a['x'] = {}.(在Perl中你可以注意到push @{$a->{x}{y}}, 'z';.)

我知道dictlist类sorta不混合,所以这很难,但我有兴趣看看是否有人有一个巧妙的解决方案,可能涉及从中创建一个继承的类,dictappend在其上定义了一个新的方法?

我也知道这可能会让一些Python纯粹主义者想要我坚持使用Perl.但是,即使只是为了挑战,我也希望看到一些东西.

Ign*_*ams 16

a = collections.defaultdict(lambda: collections.defaultdict(list))
Run Code Online (Sandbox Code Playgroud)

  • python有一个,也是唯一一个明显的做法的例子:) (2认同)