当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python profile.Profile用法及代码示例


用法:

class profile.Profile(timer=None, timeunit=0.0, subcalls=True, builtins=True)

此类通常仅在需要比 cProfile.run() 函数提供的更精确的分析控制时使用。

可以提供自定义计时器,以通过timer 参数测量代码运行所需的时间。这必须是一个返回代表当前时间的单个数字的函数。如果数字是整数,则timeunit 指定一个乘数,该乘数指定每个时间单位的持续时间。例如,如果计时器返回以数千秒为单位的时间,则时间单位将为 .001

直接使用 Profile 类允许格式化配置文件结果,而无需将配置文件数据写入文件:

import cProfile, pstats, io
from pstats import SortKey
pr = cProfile.Profile()
pr.enable()
# ... do something ...
pr.disable()
s = io.StringIO()
sortby = SortKey.CUMULATIVE
ps = pstats.Stats(pr, stream=s).sort_stats(sortby)
ps.print_stats()
print(s.getvalue())

Profile 类也可以用作上下文管理器(仅在 cProfile 模块中支持。请参阅上下文管理器类型):

import cProfile

with cProfile.Profile() as pr:
    # ... do something ...

pr.print_stats()

在 3.8 版中更改:添加了上下文管理器支持。

相关用法


注:本文由纯净天空筛选整理自python.org大神的英文原创作品 profile.Profile。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。