में एक शब्दकोश को फ़िल्टर करने का सबसे अच्छा तरीका मेरे पास स्ट्रिंग कुंजियों और फ्लोट मानों का एक शब्दकोश है।पायथन
mydict = {}
mydict["joe"] = 20
mydict["bill"] = 20.232
mydict["tom"] = 0.0
मैं केवल उन जोड़े को शामिल करना चाहता हूं जिनमें शून्य से अधिक मान है।
dict = dict.Where(r=>r.Value > 0);
अजगर में बराबर कोड क्या है:
सी # में, मैं कुछ इस तरह करना होगा?
d2 = dict((k, v) for k, v in d1.items() if v > 0)
वैसे, ध्यान दें कि dict
पहले से ही अजगर में आरक्षित है:
प्रश्नकर्ता, एक शब्दकोश लौटने के लिए लग रही है यह केवल शब्दकोश की चाबी देता है। और यह @ kindall के उत्तर –
से कम कुशल/पायथनिक है यह हो सकता है: 'd = dict (फ़िल्टर (लैम्ब्डा x: x [1]> 0.0, d.items()))' – Jeffery