Skip to main content
 首页 » 编程设计

python之简单平均是否返回 "incorrect",值

2025年05月04日14jyk

python 2.7:

def median(lista): 
    lista.sort() 
    print(lista) 
    x = len(lista) 
    if x == 1: 
        return lista[0] 
    elif len(lista) % 2 != 0: 
        return lista[((x-1)/2)] 
    else: 
        y = lista[(x / 2) - 1] 
        z = lista[(x / 2)] 
        print (y,z) 
        return (y + z) / 2 
 
print(median([1,6,3,4,2,5])) 

显示:

[1, 2, 3, 4, 5, 6] 
(3, 4) 
3 
None 

为什么不是 3.5?

谢谢!

请您参考如下方法:

只需返回 sum/2.0 而不是 sum/2

除非明确说明,否则默认情况下答案为 int。