另一个python-dictionary问题:)
这是我的字典:
mydict = {key1: valueA, key2: valueA, key3: valueB, key4: valueA,
key5: valueA, key6: valueB, key7: valueB, key8: valueA, key9: valueB}
现在我想只为密钥值对迭代字典
key4
,key5
,key6
和key7
并检查值是否为valueB
。
我希望有可能理解我的意思..
我想创建一个for循环,并且只有当key4的值是valueB时,才应该执行循环的内容,然后,如果key5的值是valueB,它应该再次执行,依此类推。提前谢谢
答案 0 :(得分:10)
for key in [key4, key5, key6, key7]:
if mydict[key] == valueB:
pass # do stuff here
答案 1 :(得分:6)
“从key4
到key7
”不是一个有意义的概念。字典基本上是无序。没有明智的方式可以说一把钥匙在另一把钥匙之前或之后。
确定要检查的所有密钥,然后进行检查。
答案 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]
....