鱼C论坛

 找回密码
 立即注册
查看: 3366|回复: 0

[技术交流] 自定义函数计算基本统计值

[复制链接]
发表于 2020-11-10 15:15:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
获取以逗号分隔的多个数据输入(输入为一行),计算基本统计值(平均值、标准差、中位数)
除中位数外,其他输出保留小数点后两位。
  1. def getNum():  # 获取用户不定长度的输入
  2.     num = list(eval(input()))
  3.     return num


  4. def mean(numbers):  # 计算平均值
  5.     sum = 0
  6.     for each in numbers:
  7.         sum += each
  8.     return sum / len(numbers)


  9. def dev(numbers, mean):  # 计算标准差
  10.     sdev = 0.0
  11.     for num in numbers:
  12.         sdev = sdev + (num - mean) ** 2
  13.     return pow(sdev / (len(numbers) - 1), 0.5)


  14. def median(numbers):  # 计算中位数
  15.     numbers = sorted(numbers)
  16.     if len(numbers) % 2 == 0:
  17.         med = (numbers[len(numbers) // 2 - 1] + numbers[len(numbers) // 2]) / 2
  18.     else:
  19.         med = numbers[len(numbers) // 2]
  20.     return med
  21. n =  getNum()  # 主体函数
  22. m = mean(n)
  23. print("平均值:{:.2f},标准差:{:.2f},中位数:{}".format(m, dev(n, m), median(n)))
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-29 10:31

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表