字典中的循环和if statement

2024-03-29 04:57:37 发布

您现在位置:Python中文网/ 问答频道 /正文

首先,我得说我是python的初学者。 那么,我的问题是: 我有一本这样的字典:

dic = {} 
dic["a", 1] = 0 
dic["a", 2] = 2 
dic["b", 1] = 5 
dic["b", 2] = 0 
... 

我想用这个字典做一个for循环来测试所有的键对,找出if语句中哪些键与0等价。 我想到了:

^{pr2}$

但是如果这句话从来都不是真的,所以我什么也做不了。 有人能帮我吗?在

谢谢


Tags: forif字典语句等价初学者dicpr2
3条回答

根据评论:

for ch in dic.items():
    if ch == 0:

[co,l]永远不是0。我想你是想测试一下ch

for [co, l], ch in dic.items():
...     print [co, l], ch
...
['a', 1] 0
['b', 2] 0
['b', 1] 5
['a', 2] 2

[co, l]是键(或它的副本);它是一个包含2项的列表,不能等于0。相反,您需要测试ch值,然后可能对该键执行某些操作。在

dic = {} 
dic["a", 1] = 0 
dic["a", 2] = 2 
dic["b", 1] = 5 
dic["b", 2] = 0 
... 

for [co, l], ch in dic.items(): 
    if ch == 0:
        print("The value for key {}, {} was 0".format(co, l))

或者如果要按键迭代:

^{pr2}$

相关问题 更多 >