我如何使用内置函数只使用它而不进行导入? 如果只有一个meian值,但是如果有2个中值,则它不起作用。
def medianoflist(list1):
x = int((len(list1) + 1)/2)
print(list1[x-1])
所以当我做list1 = [(1,2,3)]
这样的事情时,它就有效了。但是当我做[(1,2,3,4)]
之类的事情时,它输出2,这是较低的中值。对于这种情况,我需要利用上限中位数值和较低的中位数值,请帮助我无法弄明白。我也不能使用任何统计导入。
答案 0 :(得分:2)
这包括两种情况:
def medianoflist(l):
x = (l[int((len(l)-1)/2)] + l[int(len(l)/2)])/2
print x
答案 1 :(得分:1)
我不确定你的内置功能是否只是"要求意味着根本没有进口,或没有第三方进口。如果标准库导入正常,那么从Python 3.4开始,您可以使用新的statistics
模块:
import statistics
statistics.median([1, 2, 3, 4])
Out[2]: 2.5
statistics.median_low([1, 2, 3, 4])
Out[3]: 2