我的代码目前必须计算一个严重嵌套dict
到另一个中的东西。我有需要按 3 个值索引然后计数的项目。所以,在我的循环之前,我defaultdict
像这样初始化一个嵌套:
from collections import defaultdict
type_to_count_dic = defaultdict(
lambda: defaultdict(
lambda: defaultdict(int)
)
)
这让我可以像这样在一个紧密的循环中计算项目:
for a in ...:
for b in ...:
for c in ...:
type_to_count_dic[a][b][c] += 1
我觉得初始化所有这些defaultdict
s 感觉很像在 Java 之类的东西中进行类型声明。有没有更惯用/ Pythonic的方式来做这样的事情?