在Python字典中查找具有相同值的所有键

Cob*_*her 3 python dictionary

假设我有一本字典:

dict = {"Jim": "y", "Bob": "y", "Ravioli": "n"} #etc...
Run Code Online (Sandbox Code Playgroud)

我想打印出所有值为"y"的键(即:"Jim","Bob").我该怎么做(以最简单的方式让像我这样的noobie了解)?

*PS这个问题已在SO上得到解答,但解决方案只返回一个值而不是全部(以及其他我不理解的).

PPS.看起来每个人似乎都认为它是重复的,但是SO不会让我删除我的问题,因为它有答案.(*

Rah*_*K P 14

试试这个,

In [26]: [k for k,v in dict1.items() if v == 'y']
Out[26]: ['Bob', 'Jim']
Run Code Online (Sandbox Code Playgroud)

请不要dict用作变量名.

  • @RahulKP,但这将是一种非常低效的方法,并且它在执行某种硬代码,如果我们不知道所有值怎么办? (2认同)