用%%timeit來量測程式時間

Python 初學者(像是我…)第一守則,其實也是適用所有程式拉:那就是寫程式的時候先求有再求快,白話點說就是程式先跑再說,加快速率什麼的就等到摸很熟後再來斟酌吧~不過 Python 內建了一個很方便可以量測時間方式,大家其實可以三不五時的看看自己寫出來程式的狀況,前面很常提到:Python最大的弱點就是速度慢,而在做數據分析的時候,資料量一大,速度一旦慢就是非常可怕的事情,所以儘管初學者可以不用一次到位,但是如果可以話,還是盡量能先習慣好的寫法。

好啦~所以我們來看看如何利用%%timeit來計算程式執行的時間吧~

如果有學過C語言的應該知道 sum = sum + isum += i做的是同樣的事情,然而到底哪一個速度比較快呢 ? 今天就來讓它們大對決一下吧!!

利用%%timeit會計算出下面程式執行的時間,也就是上面看到的 455ms 跟 403ms ,所以果然老師說的沒錯,sum += i獲得了這一次的勝利!!

例外還有一種量測的方式,如果要執行的程式碼只有一行的話,只要使用%timeit就好了,那就來示範一下要怎麼使用~~

就是這樣%timeit他會計算旁邊的程式碼執行的時間,另外大家不知道有沒有注意到,這次同樣的程式碼,我是用函式的方式的方式來寫,利用這種方式,大家可以把想要量測的程式碼通通打包,再藉由執行這個函式來量測時間~~

大家可以試著用今天學到的方式來測量看看之前講的函數式編程的執行效率,到底有沒有比較快,未來會開始寫些 nummpy 的介紹,還記得他的底層是用C語言編寫的嗎?到時候我們就可以利用%timeit來實際量測執行的時間拉~

 

 

 

 

Facebook Comments

發表迴響