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
else
:
med = numbers[size
return
med;
n = getNum();
m = mean(n);
print
(
"平均值:{},方差:{:.2f},中位数:{}."
.format(m, dev(n,m),median(n)));
#运行结果
#请输入数字(回车退出):10
#请输入数字(回车退出):20
#请输入数字(回车退出):30
#请输入数字(回车退出):
#平均值:20.0,方差:10.00,中位数:20.