您的位置:首页 > 编程语言 > Python开发

Python 小练习 求list内中间数

2016-06-24 20:25 951 查看
题目要求:队列表内的数字求中间数

如果列表内元素数量为奇数,则排序后取排序位置最中间的数值。

如果列表内元素数量为偶数,则取排序后排序位置最中间的2个数值的平均数

代码如下:

def median(s):

n=len(s) #计算列表内元素数量

if n==1: #这个要非常注意,当元素只有一个的时候,直接取值

return s[0]

elif n%2!=0: #如果元素数量为奇数

m=sorted(s) #排序一下

mid=m[(n-1)//2] #中间值等于元素总数量减一以后除以2,记得要用//

return mid

else:

m=sorted(s)

mid=float(m[n//2-1]+m[n//2])/2 #如果是偶数,取元素数量//2后减一位的那个值,以及元素数量//2的那个值,记得最后要用float,不然没有小数点

return mid

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python codecademy