【发布时间】:2013-12-04 22:04:40
【问题描述】:
我想从包含键的任意元组/列表创建一个空的嵌套字典。我正在尝试在 Python 中找到一种简单的方法来执行此操作。它看起来像是集合 defaultdict 应该处理的东西,但我似乎无法弄清楚。
keys = ('a', 'b', 'c')
还有一本最终看起来像这样的字典:
d = {
'a': {
'b': {
'c': {}
}
}
}
【问题讨论】:
-
字典是否应该有一个不在元组中的键的条目?如果没有,
defaultdict可能不是要走的路。如果是这样,请查看这个出色的递归defaultdict构造函数:stackoverflow.com/questions/19189274/… -
这太棒了,但我不想做类似
d[a][b][c]的事情来创建它,我想把它作为一个单行理解来做,因为会有任意数量的键. -
我希望有一个单行程序可以预先填充递归
defaultdict以便像keys这样的调用会按您的预期工作 - 真正的问题是defaultdict是否返回某些东西的行为d['foobar']是你想要的还是不想要的。
标签: python dictionary