本文介绍了如何获取所有的关键在一个2d dict python的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个表单字典:

d = {123:{2:1,3:1}, 124:{3:1}, 125:{2:1},126:{1:1}}

所以,让我们来看一下二度键..

So, lets look into 2nd degree keys..

123--> 2,3
124--> 3
125--> 2
126--> 1

所以唯一的二阶键的总数是:

So total number of unique 2nd order keys are:

1,2,3

我想将这个dict修改为

Now, i want to modify this dict as

 d = {123:{1:0,2:1,3:1}, 124:{1:0,2:0,3:1}, 125:{1:0,2:1,3:0},126:{1:1,2:0,3:0}}

所以基本上所有的二阶键都没有在一个特定的2d dict ..添加该键值为0.

So basically all the 2nd order keys absent in a particular 2d dict.. add that key with value 0.

这是什么pythonic的方法?
谢谢

What is the pythonic way to do this?Thanks

推荐答案

keyset = set()
for k in d:
    keyset.update(d[k])

for k in d:
    for kk in keyset:
        d[k].setdefault(kk, 0)

这篇关于如何获取所有的关键在一个2d dict python的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-30 08:05