首页 > 解决方案 > .sort() 给我的函数一个 NonType 错误

问题描述

我正在尝试制作一个函数,它可以为我提供一个列表的平均值,不包括最大值和最小值。我想对我的列表进行排序,但是当我这样做时,我得到一个“NonType”错误。这是我的代码:

def ave_no_max_min(DataList):
    return sum(DataList.sort()[1:-1])/(len(DataList)-2)
print(ave_no_max_min([2,4,3,5,11])) ##should return 

标签: pythonnon-type

解决方案


方法 sort 对给定列表进行排序并返回 None。因此,您将列表切片应用于 NoneType 对象。

def ave_no_max_min(DataList):
    DataList.sort()
    return sum(DataList[1:-1])/(len(DataList)-2)
print(ave_no_max_min([2,4,3,5,11]))

推荐阅读