简体   繁体   English

什么是“ get()”函数出现在Python(PyPy)上的配置文件中?

[英]What is 'get()' function appeared in profiling on Python (PyPy)?

I profile my program by 'profile.py' on PyPy 1.8. 我在PyPy 1.8上通过“ profile.py”对程序进行了分析。

import profile
profile.run('run()', filename)
import pstats
p = pstats.Stats(filename)
p.sort_stats('time').print_stats(10)

Here is output of profiling: 这是分析的输出:

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)
     .....

This result shows that 'get()' is the bottlenecks of program. 这个结果表明“ get()”是程序的瓶颈。 But I don't know 'get()' function at all. 但是我根本不知道'get()'函数。

What is 'get()' function on Python? 什么是Python上的“ get()”函数?

Looks like a dictionary is used somewhere in the code being profiled. 看起来像字典在被分析的代码中的某处使用。

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.

See Mapping Types - dict and Python dictionary get() Method . 请参见映射类型-dictPython字典get()方法

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM