【发布时间】:2019-12-15 01:23:00
【问题描述】:
我正在尝试创建一个函数来计算列表的平均值,不包括最大值和最小值。我想对我的列表进行排序,但是当我这样做时,我得到一个“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
【问题讨论】:
-
list.sort()是一个就地操作——它修改list而不返回它。执行print(type([3, 2, 1].sort()))返回<class 'NoneType'>。 -
.sort()返回什么(提示它不是列表)。 -
你做过任何调试吗?
-
@juanpa.arrivillaga 问对了问题。这是两秒钟的调试时间,有时根本没有 (ha),因为我认为我的 IDE 会捕捉到这一点。