如何定义并填充字典的字典的列表

3 投票
2 回答
675 浏览
提问于 2025-04-16 20:59

我需要填充一个字典,类型是:

partial[sequence][exp_id] = [item_1, ..., item_n]

可以这样来做:

partial = defaultdict(dict)

for sequence in sequences:
   for exp_id in exp_ids:
       for item in data:
           partial[sequence].setdefault(eid, []).append(item)

有没有更有效的方法呢? 像这样:

partial = defaultdict(defaultdict(list))

for sequence in sequences:
   for exp_id in exp_ids:
       for item in data:
          partial[sequence][exp_id].append(item)

那样就太完美了,但可惜的是,这样不行,因为 defaultdict 需要一个可调用的对象作为第一个参数。

2 个回答

6

尝试一下:

partial = defaultdict(lambda: defaultdict(list))
6

在编程中,有时候我们会遇到一些问题,想要找到解决办法。比如,有人可能在使用某个工具或库时,遇到了错误或者不明白的地方。这时候,大家会去一个叫StackOverflow的网站上提问,那里有很多热心的程序员愿意帮忙。

在这个网站上,用户可以描述他们遇到的问题,提供一些代码示例,甚至附上错误信息。其他人看到后,就会根据自己的经验来给出建议或者解决方案。这个过程就像是一个大型的编程问答社区,大家互相帮助,共同进步。

总之,StackOverflow是一个非常有用的资源,特别是对于刚开始学习编程的人来说,能够在这里找到很多有用的信息和解决方案。

partial = defaultdict(lambda: defaultdict(list))

撰写回答