Python程序员如何检查字典中的任何值是否符合某个条件(在我的情况下是大于0
)。我正在寻找最具“Python风格”的方式,对性能影响最小。
我的字典:
pairs = { 'word1':0, 'word2':0, 'word3':2000, 'word4':64, 'word5':0, 'wordn':8 }
迄今为止,我使用了这两种(巨大的?)方法。
1:
options = pairs.values() # extract values
for i in options:
if i > 0:
return True
return False
2:
options = sorted(pairs.items(), key=lambda e: e[1], reverse=True) # rank from max to min
if options[0][1] > 0:
return True
else:
return False
.values
是一个序列;any
接受一个序列; 因此我们可以使用与链接的重复内容相同的技术(这也是给定答案的地方)。 - Karl Knechtel