Bir python programcısı, bir sözlük değeri herhangi bir koşulla eşleşip eşleşmediğini kontrol eder (durumumda 0
'dan büyüktür). En az performans etkisi olan en "pythonic" yolu arıyorum.Sözlüğün herhangi bir değeri bir koşulla eşleşiyorsa kontrol edin
benim sözlüğü:
pairs = { 'word1':0, 'word2':0, 'word3':2000, 'word4':64, 'word5':0, 'wordn':8 }
şimdiye kadar bu 2 (? Canavarca) yöntemleri kullanılır.
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
Sözlüğünüzde (metniniz gibi) veya tüm girdilerde (kodunuz gibi) yalnızca bir giriş mi kontrol ediyorsunuz? – smcg
@smcg: İngilizce'm için üzgünüm. Tüm girişleri kastediyorum;] – Firebowl2000