defgetNum():#获取多个输入数据
num =[]
iNumStr=input("请输入数字(回车结束):")while iNumStr !="":
num.append(eval(iNumStr))
iNumStr=input("请输入数字(回车结束):")return num
defmean(numbers):#平均值
s =0.0for num in numbers:
s+=num
return s/len(numbers)defdev(numbers,mean):#方差
sdev =0.0for num in numbers:
sdev = sdev+(num - mean)**2returnpow(sdev/(len(numbers)-1),0.5)defmedian(numbers):sorted(numbers)#排序函数
size =len(numbers)if size %2==0:
med=(numbers[size//2-1]+numbers[size//2])/2else:
med=numbers[size//2]return med
defmain():
n = getNum()
m=mean(n)
d=dev(n,m)
md=median(n)print("数据:{}\n平均数:{:.2}\n方差:{:.2}\n中位数:{}".format(n,m,d,md))
main()
def getNum():#获取多个输入数据 num = [] iNumStr=input("请输入数字(回车结束):") while iNumStr != "": num.append(eval(iNumStr)) iNumStr=input("请输入数字(回车结束):") return numdef mean(numbers):#平均值 s = 0.0 for num in numbers: s+=n.