def get_median(data): data.sort() # print data half = len(data)//2 # // 取整除 - 返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0 # print data[half] # print data[~half]return (data[half] + data[~half]) / 2
解析: 1. if len = 5, half = 2, ~half = -3, 此时 data[half] = data[~half] ,就和,取平均,等于 data[half]
2. if len = 6, half = 3, -half = -4, 此时 ,对中间2个数 data[~half] 和 data[half] 求和,再取平均值
all: half + ~half = -1
原因: http://blog.csdn.net/zhglinux/article/details/78170844
python 通过对索引 取反 获得中位数
最新推荐文章于 2024-02-03 16:10:03 发布