आप डिक्शनरी पर इटरेट करके और पहले ज़ीरो वैल्यू को फ़िल्टर करके ऐसा कर सकते हैं। फिर फ़िल्टर की गई वैल्यू का योग लें। अंत में, इन फ़िल्टर की गई वैल्यू की संख्या से विभाजित करें।
उदाहरण
my_dict = {"foo": 100, "bar": 0, "baz": 200}
filtered_vals = [v for _, v in my_dict.items() if v != 0]
average = sum(filtered_vals) / len(filtered_vals)
print(average)
आउटपुट
यह आउटपुट देगा:
150.0
आप रिड्यूस का भी उपयोग कर सकते हैं लेकिन इस तरह के सरल कार्य के लिए, यह ओवरकिल है। और यह लिस्ट कॉम्प्रिहेंशन का उपयोग करने की तुलना में बहुत कम पठनीय है।