資料結構與演算法(二)

來源:互聯網
上載者:User

標籤:需要   定時器   src   UNC   代碼   結構   速度   imei   定時   

python內建類型效能分析

timeit模組

class timeit.Timer(stmt="pass",setup=‘pass‘,time=<timer function>)

Timer是測量小段代碼執行速度的類

stmt參數是要測試的代碼語句(statment)

setup參數是運行代碼是需要的設定

timer 參數是一個定時器函數,與平台無關。

 

timeit.Timer.timeit(number=1000000)

Timer類中測試語句執行速度的對象方法,number參數是測量代碼時的測試冊數,預設為1000000次。方法返回執行代碼的平均耗時,一個float類型的秒數。

 

 

def t1():
li = []
for i in range(10000):
li.append(i)

def t2():
li = []
for i in range(10000):
li += [i]

def t3():
li = [i for i in range(10000)]

def t4():
li = list(range(10000))

def t5():
li = []
for i in range(10000):
li.extend([i])


timer1 = timeit("t1()","from __main__ import t1",number=1000)
print("append:",timer1)

timer2 = timeit("t2()","from __main__ import t2",number=1000)
print("+:",timer2)


timer3 = timeit("t3()","from __main__ import t3",number=1000)
print("i for i in range(n):",timer3)

timer4 = timeit("t4()","from __main__ import t4",number=1000)
print("list(range(n)):",timer4)

timer5 = timeit("t5()","from __main__ import t5",number=1000)
print("li.extend([i]):",timer5)

 

資料結構與演算法(二)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.