Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从对象列表中获取属性的平均值_Python_Oop - Fatal编程技术网

Python 从对象列表中获取属性的平均值

Python 从对象列表中获取属性的平均值,python,oop,Python,Oop,我有一门课: class Peak: def __init__(self): self.FileID = "" self.RT = 0 self.Intensity = 0 self.MZ = 0 self.ChiSq = 0 我填充它的属性并将其添加到列表中,但如何获得平均RT(例如,作为单个值)。就这么简单!:) 祝你好运 假设您有一个类实例列表: lst = [Peak(), Peak(), Peak

我有一门课:

class Peak:
    def __init__(self):
        self.FileID = ""
        self.RT = 0
        self.Intensity = 0
        self.MZ = 0
        self.ChiSq = 0
我填充它的属性并将其添加到列表中,但如何获得平均RT(例如,作为单个值)。

就这么简单!:)


祝你好运

假设您有一个类实例列表:

lst = [Peak(), Peak(), Peak(), ...]
您已经检查并填充了它们的属性。如果要计算
lst
中所有实例中
RT
的平均值,可以执行以下操作

lst_avg = sum([i.RT for i in lst]) / len(lst)

如果您有一个
Peak
对象列表,为了获得所有对象的平均RT,您应该首先创建每个
Peak
的RT列表,并计算其平均值

您可以在一行中完成:

avg_rt = sum([item.RT for item in my_list]) / len(my_list)

你到底有什么问题?如果你有一个整数列表,你知道如何计算平均数吗?你看过统计数据了吗?你的意思是?您知道如何访问属性吗?你知道如何循环列表吗?你试过什么,怎么不起作用?在你的一个评论中,你问了如何找到max。有一个
max
函数可以在列表中工作。你为什么把我的答案复制成你自己的?我没有,我写了它,当我发布它时(在我写了我的并点击了帖子之后),我注意到了你的。。。我甚至投了你的票。我不想打架。如果你认为合适的话,我可以删除它。我向你保证,这不是恶意的。在提交之前寻找“关于这个问题的新答案”很好。现在谢谢大家。我如何从相同结构的属性中获得最大值?
avg_rt = sum([item.RT for item in my_list]) / len(my_list)