python词典:如何获得具有特定值的所有键
是否有可能获得值高于阈值的字典中的所有键?python词典:如何获得具有特定值的所有键
一个dicitonary可能看起来像:
mydict = {(0,1,2):"16",(2,3,4):"19"}
的阈值可以是17例如
当然是可能的。我们可以简单的写:
[k for k,v in mydict.items() if float(v) >= 17]
或在情况下,你用python-2.7工作,你 - 像@NoticeMeSenpai说 - 更好地利用:
[k for k,v in mydict.iteritems() if float(v) >= 17]
这是一个列表理解。我们遍历mydict
字典中的键值对。接下来,我们将值v
转换为float(v)
并检查该浮点值是否大于或等于17.如果是这种情况,我们将键k
添加到列表中。
了给定mydict
,这会产生:
>>> [k for k,v in mydict.items() if float(v) >= 17]
[(2, 3, 4)]
所以包含在这里满足条件的单键列表:(2,3,4)
。
另外值得注意的是,
@NoticeMeSenpai:是的,谢谢。我将它添加到答案中。 –
不客气! –
那是字典吗?用字符串作为值? –