Python中可以使用sorted函数对列表进行排序,然后根据列表长度的奇偶性来求出中位数。

若列表长度为奇数,则中位数为排序后的列表的中间值;若列表长度为偶数,则中位数为排序后的列表中间两个数的平均值。

具体实现如下:

def median(lst):
    sorted_lst = sorted(lst)
    lst_len = len(lst)
    mid = lst_len // 2
    if lst_len % 2 == 0:
        # 如果列表长度为偶数,中位数为中间两个数的平均值
        return (sorted_lst[mid - 1] + sorted_lst[mid]) / 2
    else:
        # 如果列表长度为奇数,中位数为中间值
        return sorted_lst[mid]

使用示例:

lst = [1, 3, 5, 7, 9]
print(median(lst))  # 5

lst = [1, 3, 5, 7, 9, 11]
print(median(lst))  # 6.0
Python 列表中位数计算方法详解

原文地址: https://www.cveoy.top/t/topic/m3ld 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录