[英]average of attribute in a list of objects
我有一个用户列表。 每个用户将具有一个waitTime
属性。 如何获得列表中所有用户的平均waitTime
? 下面的代码可能会起作用,但是我猜想有一种更好的方法。
sum = 0
for user in self.done:
sum += user.waitTime
sum/len(self.done)
您可以为此使用内置sum
函数和生成器表达式。
sum(user.waitTime for user in self.done)/float(len(self.done))
仅在python2.x中并且仅在所有user.waitTime
对象都是整数时才需要float
。
使用生成的表达和sum
为总和:
sum(user.waitTime for user in self.done) / float(len(self.done))
如果时间是整数,则需要将len()
的结果转换为float,否则将得到整数除法,即在Python 2中被截断。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.