基本统计值app
总个数、求和、平均值、方差、中位数…模块化
# CalStatisticsV1.py def getNum(): #获取用户不定长度的输入 nums = [] iNumStr = input("请输入数字(回车退出): ") while iNumStr != "": nums.append(eval(iNumStr)) iNumStr = input("请输入数字(回车退出): ") return nums def mean(numbers): #计算平均值 s = 0.0 for num in numbers: s = s + num return s / len(numbers) def dev(numbers, mean): #计算方差 sdev = 0.0 for num in numbers: sdev = sdev + (num - mean)**2 return pow(sdev / (len(numbers) - 1), 0.5) def median(numbers): #计算中位数 sorted(numbers) size = len(numbers) if size % 2 == 0: med = (numbers[size // 2 - 1] + numbers[size // 2]) / 2 else: med = numbers[size // 2] return med n = getNum() m = mean(n) print("平均值:{},方差:{:.2},中位数:{}.".format(m, dev(n, m), median(n)))
请输入数字(回车退出): 13 请输入数字(回车退出): 15 请输入数字(回车退出): 16 请输入数字(回车退出): 17 请输入数字(回车退出): 平均值:15.25,方差:1.7,中位数:15.5.