python沒有提供求平均數(shù)的函數(shù),建議先求和然后除以個(gè)數(shù)求得,內(nèi)容如下:
成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供朝陽網(wǎng)站建設(shè)、朝陽做網(wǎng)站、朝陽網(wǎng)站設(shè)計(jì)、朝陽網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、朝陽企業(yè)網(wǎng)站模板建站服務(wù),十余年朝陽做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
#!/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。
解釋性:
一個(gè)用編譯性語言比如C或C++寫的程序可以從源文件(即C或C++語言)轉(zhuǎn)換到一個(gè)你的計(jì)算機(jī)使用的語言(二進(jìn)制代碼,即0和1)。這個(gè)過程通過編譯器和不同的標(biāo)記、選項(xiàng)完成。
運(yùn)行程序的時(shí)候,連接/轉(zhuǎn)載器軟件把你的程序從硬盤復(fù)制到內(nèi)存中并且運(yùn)行。而Python語言寫的程序不需要編譯成二進(jìn)制代碼。你可以直接從源代碼運(yùn)行 程序。
在計(jì)算機(jī)內(nèi)部,Python解釋器把源代碼轉(zhuǎn)換成稱為字節(jié)碼的中間形式,然后再把它翻譯成計(jì)算機(jī)使用的機(jī)器語言并運(yùn)行。這使得使用Python更加簡單。也使得Python程序更加易于移植。
將未來七天數(shù)值輸入wendu列表
利用sum函數(shù)求和,這點(diǎn)和excel里類似。賦值給變量s
.將變量s除7, 利用len函數(shù)求列表長度。再轉(zhuǎn)化為整數(shù),用int函數(shù)。賦值給average變量。編程就是這么一步一步,不能有一點(diǎn)錯(cuò)
將平均值打印到屏幕,利用print函數(shù)
.運(yùn)行程序,或按f5,結(jié)果屏幕上顯示。結(jié)果隨數(shù)字改變而改變。程序自動(dòng)完成。如果報(bào)錯(cuò),則要排除bug
# coding = GBK
a =[1,2,3,4,5]
sum=0
b = len(a)
print("這個(gè)數(shù)組的長度為:",b)
for i? in a:
sum =sum +i
print("這個(gè)數(shù)組之和為:",sum)
print("這個(gè)數(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)求和、計(jì)數(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