使用特定值迭代dict键

时间:2017-10-02 16:56:04

标签: python python-3.x

我有这样的字典:

my_dict={val1:True, val2:False, val3:False, val4:True}

如何遍历此dict的值为False的键?

4 个答案:

答案 0 :(得分:6)

只需使用List comprehension

[key for key,val in my_dict.items() if val==False]

这将返回listkeys,其value Falselist。现在,只需要通过IN : my_dict = {'a': True,'b': False, 'c': True, 'd': False} OUT : ['b','d']

#driver values:

yourdomain.com CNAME goole.com

答案 1 :(得分:1)

您可以这样做:

>>> my_dict={'val1':True,'val2':False,'val3':False,'val4':True}
>>> [k for k, v in my_dict.items() if not v]
['val2', 'val3']
>>> 

答案 2 :(得分:0)

简单解决您的问题:

for i,j in my_dict.items():
    if j is False:
        print(i)
  

其他信息:

     

在python中,我们可以使用if something:来检查truthy和falsy:

所以:

for i,j in my_dict.items():

    if not j:
        print(i)

您可以使用生成器表达式:

print(list((key for key,value in my_dict.items() if not value)))

答案 3 :(得分:-1)

你必须先过滤它们,这是一个有效的例子:

for key in (k for k, v in my_dict.items() if not v):
    print(key)

这通过遍历所有(键,值)对并迭代具有负key

value来工作。