[英]What is 'get()' function appeared in profiling on Python (PyPy)?
我在PyPy 1.8上通过“ profile.py”对程序进行了分析。
import profile
profile.run('run()', filename)
import pstats
p = pstats.Stats(filename)
p.sort_stats('time').print_stats(10)
这是分析的输出:
Fri May 25 06:40:26 2012 profile.output
225308 function calls (220308 primitive calls) in 1832700302271.964 seconds
Ordered by: internal time
List reduced from 49 to 10 due to restriction <10>
ncalls tottime percall cumtime percall filename:lineno(function)
57000 15986440103363.266 280463861.463 15986440103363.266 280463861.463 :0(get)
7000 5696817988322.265 813831141.189 5696817988322.265 813831141.189 :0(getattr)
.....
这个结果表明“ get()”是程序的瓶颈。 但是我根本不知道'get()'函数。
什么是Python上的“ get()”函数?
看起来像字典在被分析的代码中的某处使用。
get(key[, default])
Return the value for key if key is in the dictionary, else default.
If default is not given, it defaults to None, so that this method
never raises a KeyError.
请参见映射类型-dict和Python字典get()方法 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.