python性能調優(1)


性能調優主要包括時間的優化和內存的優化.要做時間的優化首先就要統計時間,python本身提供了一個描述程序時間性能的類cProfile.

如要獲取func函數所耗用的時間,可以使用如下代碼

import cProfile
cProfile.run(
'func()')

 

如果需要知道一個python文件運行的時間,可以在命令行下使用如下命令

python -m cProfile myscript.py

 

 通常輸出如下:

復制代碼         3 function calls in 0.446 CPU seconds

   Ordered by: standard name

   ncalls  tottime  percall  cumtime  percall filename:lineno(
function)
        
1    0.000    0.000    0.446    0.446 <string>:1(<module>)
        
1    0.446    0.446    0.446    0.446 wordcounter.py:7(__init__)
        
1    0.000    0.000    0.000    0.000 {method 'disable' of '_lsprof.Profiler' objects}
復制代碼

 

ncalls表示函數調用的次數

tottime表示指定函數消耗的時間

percall表示函數每次調用的平均耗時,tottime/ncalls

cumtime表示該函數及其所有子函數的調用耗時,就是從函數開始調用到返回的時間 

第二個percall為cumtime/primitive calls的值

filename:lineno(function)表示每個函數所在的位置 


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
  © 2014-2022 ITdaan.com 联系我们: