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将xml文件解析成html文件的实现方法

功能就是题目所述,我的python2.7,装在windows环境,我使用的开发工具是wingide 6.0 1、首先是我设计的简单的一个xml文件,也就是用来解析的源文件 下面是这个文件...

python 处理telnet返回的More,以及get想要的那个参数方法

问题: 需要循环获取网元返回的某个参数,并计算出平均值。 解决方案: 通过expect解决返回More的问题。 通过具体的参数位置,精确获取到参数。 讨论: 参数位置固定,不好复用。...

Python迭代器iterator生成器generator使用解析

1. 迭代 根据记录的前面的元素的位置信息 去访问后续的元素的过程 -遍历 迭代 2. 可迭代对象 iterable 如何判断可迭代对象的3种方式 能够被迭代访问的对象 for...

Python编程实现正则删除命令功能

本文实例讲述了Python编程实现正则删除命令功能。分享给大家供大家参考,具体如下: 脚本用途: 在DOS下使用del功能箭头,不支持正则表达式的功能。 脚本实现: import s...

把csv文件转化为数组及数组的切片方法

在Python中我们经常会用到两个库Numpy和pandas csv文件转化为数组 import numpy my_matrix = numpy.loadtxt(open("c:\\...