如何在Python字典中找到非零值的平均数?

如何在Python字典中找到非零值的平均数?

您可以通过遍历字典并首先过滤出零值来完成此操作。然后,将过滤后的值求和,最后除以这些过滤后的值的数量。

阅读更多:Python 教程

示例

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

您也可以使用reduce,但对于这样的简单任务,它是一种过度设计。而且,与使用列表推导式相比,它也不太可读。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程