首先我們先來了解一下計算平均數(shù)的IPO模式.
創(chuàng)新互聯(lián)建站是專業(yè)的永吉網(wǎng)站建設(shè)公司,永吉接單;提供成都做網(wǎng)站、成都網(wǎng)站設(shè)計,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行永吉網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊,希望更多企業(yè)前來合作!
輸入:待輸入計算平均數(shù)的數(shù)。
處理:平均數(shù)算法
輸出:平均數(shù)
明白了程序的IPO模式之后,我們打開本地的python的IDE
工具,并新建一個python文件,命名為test6.py.
請點擊輸入圖片描述
請點擊輸入圖片描述
請點擊輸入圖片描述
打開test6.py,進(jìn)行編碼,第一步,提示用戶輸入要計算多少個數(shù)的平均數(shù)。
請點擊輸入圖片描述
第二步,初始化sum總和的值。注意,這是編碼的好習(xí)慣,在定義一個變量的時候,給一個初始值。
請點擊輸入圖片描述
第三步,循環(huán)輸入要計算平均數(shù)的數(shù),并計算總和sum的值。
請點擊輸入圖片描述
最后,計算出平均數(shù),并輸出,利用“總和/數(shù)量”的公式計算出平均數(shù)。
請點擊輸入圖片描述
編碼完成后,記得保存,然后進(jìn)行調(diào)試運行。按F5鍵或者點擊菜單欄中的“run”-》“run model”來運行程序。
請點擊輸入圖片描述
請點擊輸入圖片描述
函數(shù)體:
numpy.mean(a, axis=None, dtype=None, out=None, keepdims=??class 'numpy._globals._NoValue')[source]
功能:
計算指定軸的 算術(shù)平均值 。
返回數(shù)組元素的平均值。默認(rèn)的情況下,求均值的操作在平展開來的數(shù)組上進(jìn)行,否則就在指定的軸上。
參數(shù):
①a:必須是數(shù)組。
②axis:默認(rèn)條件下是flatten的array,可以指定相應(yīng)的軸。
如果是二維矩陣,axis=0返回縱軸的平均值,axis=1返回橫軸的平均值。
例子如下:
注意 (關(guān)于精度):
算術(shù)平均值是沿軸的元素總和除以元素的數(shù)量。既然是除法,就涉及到一個精確度的問題。
對于浮點輸入,平均值的計算使用與輸入相同的精度計算,這可能會導(dǎo)致結(jié)果不準(zhǔn)確,特別是對于float32來說。為了緩解這個問題,我們可以使用dtype關(guān)鍵字指定更高精度的累加器。
具體看下面這個例程:
def?avgScore(scores,n=10):
s?=?0
for?i?in?range(len(scores)):
s?+=?scores[i]
return?s/n
scores=[90,88,76,45,77,95,66,88,91]
print("按班級人數(shù)計算的平均值:{:.2f}".format(avgScore(scores)))
print("按考試人數(shù)計算的平均值:{:.2f}".format(avgScore(scores,len?(scores))))