我的代码非常简单,但我无法弄清楚为什么会抛出这个错误?
def median(numbers):
newnumbers = numbers.sort()
length = newnumbers.len()
print length
median([4,6,1])
Run Code Online (Sandbox Code Playgroud)
我在网上搜索,也搜索SO和len()是获取列表长度的正确方法.但是,我一直收到错误"AttributeError:'NoneType'对象没有属性'len'"
我在这做错了什么?谢谢 !
numbers.sort()适当的地方 - 它改变数字,但返回None,所以这是newnumbers包含的.你应该使用newnumbers = sorted(numbers),这将解决异常.
但请注意,不需要排序,因为您只需返回输入列表的长度.所以:
def median(numbers):
print len(numbers)
Run Code Online (Sandbox Code Playgroud)
会完成同样的事情.(而你没有返回中位数)
| 归档时间: |
|
| 查看次数: |
4457 次 |
| 最近记录: |