Python:仅使用字典中的某些键进行for循环

时间:2012-01-11 09:34:47

标签: python dictionary for-loop key

另一个python-dictionary问题:)

这是我的字典:

mydict = {key1: valueA, key2: valueA, key3: valueB, key4: valueA,
key5: valueA, key6: valueB, key7: valueB, key8: valueA, key9: valueB}

现在我想只为密钥值对迭代字典 key4key5key6key7并检查值是否为valueB。 我希望有可能理解我的意思..

我想创建一个for循环,并且只有当key4的值是valueB时,才应该执行循环的内容,然后,如果key5的值是valueB,它应该再次执行,依此类推。提前谢谢

4 个答案:

答案 0 :(得分:10)

for key in [key4, key5, key6, key7]:
    if mydict[key] == valueB:
        pass # do stuff here

答案 1 :(得分:6)

“从key4key7不是一个有意义的概念。字典基本上是无序。没有明智的方式可以说一把钥匙在另一把钥匙之前或之后。

确定要检查的所有密钥,然后进行检查。

答案 2 :(得分:0)

for key in ["key4","key5","key6","key7"]:
   if mydict[key] == valueB :
      #do what you want

答案 3 :(得分:0)

您还可以创建一组ignored_keys,然后在迭代之前删除这些键。

for key in mydicts.keys() - ignore_keys:
    value = mydict[key]
    ....