039 實例9-基本統計值計算

1、"基本統計值計算"問題分析

1.1 問題分析

基本統計值app

  • 需求:給出一組數,對它們有個概要理解
  • 該怎麼作呢?

總個數、求和、平均值、方差、中位數…模塊化

  • 總個數:len()
  • 求和:for … in
  • 平均值:求和/總個數
  • 方差:各數據與平均數差的平方的和的平均數
  • 中位數:排序,而後…
  • 奇數找中間1個,偶數找中間2個取平均

2、"基本統計值計算"實例講解

2.1 基本統計值計算

  • 獲取多數據輸入
  • 經過函數分隔功能
# CalStatisticsV1.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):  #計算中位數
    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)))
請輸入數字(回車退出): 13
請輸入數字(回車退出): 15
請輸入數字(回車退出): 16
請輸入數字(回車退出): 17
請輸入數字(回車退出): 
平均值:15.25,方差:1.7,中位數:15.5.

3、"基本統計值計算"觸類旁通

3.1 技術能力擴展

  • 獲取多個數據:從控制檯獲取多個不肯定數據的方法
  • 分隔多個函數:模塊化設計方法
  • 充分利用函數:充分利用Python提供的內容函數
相關文章
相關標籤/搜索