# 定义计算中位数的函数get_median(),输入参数为input_list,return值为中位数
def get_median(input_list):
input_list.sort() #input_list从小到大排序
#print(input_list)
n=len(input_list) #获取input_list长度并赋值给n
if n%2 ==1: #如果input_list长度为奇数,也就是除以2余数为1
median_value=input_list[int((n+1)/2)-1]
#中位数为第(n+1)/2个数,索引为(n+1)/2-1
#(n+1)/2为浮点数,用int()转化为整数,才能作为索引
else: #如果list长度为偶数
median_value=(input_list[int(n/2-1)]+input_list[int(n/2+1-1)])/2
#中位数为第n/2个数(索引为n/2-1)和第n/2+1个数(索引为n/2+1-1)的均值
return median_value
# 测试:调用get_median函数,计算中位数
input_list1=[100,98,87,65,82,99,92,99,100]
input_list2=[98,87,65,82,99,92,99,100]
print(get_median(input_list1))
print(get_median(input_list2))
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
From B