python求平均数、方差、中位数的例子

yipeiwu_com6年前Python基础

CalStatistics.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):    #计算中位数
  numbers = sorted(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)))

以上这篇python求平均数、方差、中位数的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

解决python文件双击运行秒退的问题

今天帮同事写了一个处理Excel表格的python脚本,在我的电脑上双击正常运行,奈何在同事的电脑上总是秒退,研究了半天终于解决,写出来跟大家分享一下。 py文件秒退原因分析: 首先确保...

Python 调用VC++的动态链接库(DLL)

1. 首先VC++的DLL的导出函数定义成标准C的导出函数: 复制代码 代码如下:#ifdef LRDLLTEST_EXPORTS #define LRDLLTEST_API __dec...

基于python yield机制的异步操作同步化编程模型

本文总结下如何在编写python代码时对异步操作进行同步化模拟,从而提高代码的可读性和可扩展性。      游戏引擎一般都采用分布式框架,通过一定...

Python selenium 父子、兄弟、相邻节点定位方式详解

今天跟大家分享下selenium中根据父子、兄弟、相邻节点定位的方法,很多人在实际应用中会遇到想定位的节点无法直接定位,需要通过附近节点来相对定位的问题,但从父节点定位子节点容易,从子节...

python使用正则表达式来获取文件名的前缀方法

在我们处理文件的时候,会遇到这样的一种场景,我们需要对某个文件进行操作,然后生成与原文件名相同的文件(只是文件格式改变)。那么这个时候就可以使用正则表达式来匹配我们所需要的字符串。 实现...