# coding = GBK
站在用戶的角度思考問題,與客戶深入溝通,找到上思網(wǎng)站設(shè)計與上思網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:做網(wǎng)站、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、空間域名、虛擬空間、企業(yè)郵箱。業(yè)務(wù)覆蓋上思地區(qū)。
a =[1,2,3,4,5]
sum=0
b = len(a)
print("這個數(shù)組的長度為:",b)
for i? in a:
sum =sum +i
print("這個數(shù)組之和為:",sum)
print("這個數(shù)組平均數(shù)為",sum/b)
或
import sys
sum = 0
cnt = 0
f = open('1.txt', 'r')
files = f.readline()
while (files ):
sum = sum + float(files .split(",")[0])
cnt = cnt + 1
files = f.readline()
print(sum / cnt)
f.close()
或者。
#!/usr/bin/env pythonimport timeimport numpy as np
dd = np.random.randint(0, 20, size=(2*1000*1000))t_start = time.clock()avg_sum1 =
0.0BlockOffset = 0 ? ? while BlockOffset len(dd):
if dd[BlockOffset + 1] = 10:
avg_sum1 += dd[BlockOffset + 1] * 0.1
else:
avg_sum1 += dd[BlockOffset + 0] * 0.01
BlockOffset += 2print('Avg: ' + str(avg_sum1 / len(dd) / 2)) ? ?print('Exe time: ' +
str(time.clock() - t_start))
擴(kuò)展資料:
python 實(shí)現(xiàn)求和、計數(shù)、最大最小值、平均值、中位數(shù)、標(biāo)準(zhǔn)偏差、百分比。
import?sys
class?Stats:
def?__init__(self, sequence):
# sequence of numbers we will process
# convert all items to floats for numerical processing
self.sequence?=?[float(item)?for?item?in?sequence]
def?sum(self):
if?len(self.sequence) ?1:
return?None
else:
return?sum(self.sequence)
def?count(self):
return?len(self.sequence)
def?min(self):
if?len(self.sequence) ?1:
return?None
else:
return?min(self.sequence)
def?max(self):
if?len(self.sequence) ?1:
return?None
else:
return?max(self.sequence)
def?avg(self):
if?len(self.sequence) ?1:
return?None
else:
return?sum(self.sequence)?/?len(self.sequence)?
def?median(self):
if?len(self.sequence) ?1:
return?None
else:
self.sequence.sort()
return?self.sequence[len(self.sequence)?//?2]
def?stdev(self):
if?len(self.sequence) ?1:
return?None
else:
avg?=?self.avg()
sdsq?=?sum([(i?-?avg)?**?2?for?i?in?self.sequence])
stdev?=?(sdsq?/?(len(self.sequence)?-?1))?**?.5
return?stdev
def?percentile(self, percentile):
if?len(self.sequence) ?1:
value?=?None
elif?(percentile =?100):
sys.stderr.write('ERROR: percentile must be 100.? you supplied: %s\n'%?percentile)
value?=?None
else:
element_idx?=?int(len(self.sequence)?*?(percentile?/?100.0))
self.sequence.sort()
value?=?self.sequence[element_idx]
return?value
參考資料來源:百度百科-python
python沒有提供求平均數(shù)的函數(shù),建議先求和然后除以個數(shù)求得。
#!/usr/bin/env pythonimport timeimport numpy as np,dd = np.random.randint(0, 20, size=(2*1000*1000))t_start = time.clock()avg_sum1 =0.0BlockOffset = 0 ? ? while BlockOffset len(dd):if dd[BlockOffset + 1] = 10。
解釋性:
一個用編譯性語言比如C或C++寫的程序可以從源文件(即C或C++語言)轉(zhuǎn)換到一個你的計算機(jī)使用的語言(二進(jìn)制代碼,即0和1)。這個過程通過編譯器和不同的標(biāo)記、選項完成。
運(yùn)行程序的時候,連接/轉(zhuǎn)載器軟件把你的程序從硬盤復(fù)制到內(nèi)存中并且運(yùn)行。而Python語言寫的程序不需要編譯成二進(jìn)制代碼。你可以直接從源代碼運(yùn)行 程序。
在計算機(jī)內(nèi)部,Python解釋器把源代碼轉(zhuǎn)換成稱為字節(jié)碼的中間形式,然后再把它翻譯成計算機(jī)使用的機(jī)器語言并運(yùn)行。這使得使用Python更加簡單。也使得Python程序更加易于移植。
首先我們先來了解一下計算平均數(shù)的IPO模式.
輸入:待輸入計算平均數(shù)的數(shù)。
處理:平均數(shù)算法
輸出:平均數(shù)
明白了程序的IPO模式之后,我們打開本地的python的IDE
工具,并新建一個python文件,命名為test6.py.
請點(diǎn)擊輸入圖片描述
請點(diǎn)擊輸入圖片描述
請點(diǎn)擊輸入圖片描述
打開test6.py,進(jìn)行編碼,第一步,提示用戶輸入要計算多少個數(shù)的平均數(shù)。
請點(diǎn)擊輸入圖片描述
第二步,初始化sum總和的值。注意,這是編碼的好習(xí)慣,在定義一個變量的時候,給一個初始值。
請點(diǎn)擊輸入圖片描述
第三步,循環(huán)輸入要計算平均數(shù)的數(shù),并計算總和sum的值。
請點(diǎn)擊輸入圖片描述
最后,計算出平均數(shù),并輸出,利用“總和/數(shù)量”的公式計算出平均數(shù)。
請點(diǎn)擊輸入圖片描述
編碼完成后,記得保存,然后進(jìn)行調(diào)試運(yùn)行。按F5鍵或者點(diǎn)擊菜單欄中的“run”-》“run model”來運(yùn)行程序。
請點(diǎn)擊輸入圖片描述
請點(diǎn)擊輸入圖片描述