微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从 cprofile 中检索特定函数的时间

如何解决从 cprofile 中检索特定函数的时间

我正在尝试使用 cProfile 分析我的一些 python3 代码,但由于我在代码调用一个函数,因此我有 300 多个函数调用需要解析。有没有办法可以标记我想要累积时间的某些功能?例如,假设我有以下代码

class Foo:
    def __init__(self):
        self.arr = []
    
    def someFunction(self,x):
        return x+1

    def addElem(self,x):
        new_elem = library_function1(x) + self.someFunction(x)
        self.arr.append(x)

    def removeElem(self):
        elem = self.arr.pop()
        return library_function2(elem)

if __name__ == "__main__":
    foo = Foo()        

    pr = cProfile.Profile()
    pr.enable()
    
    foo.addElem(1)
    foo.removeElem()

    pr.disable()
    pr.print_stats(sort="cumtime")

如何仅获取 foo.addElem、removeElem 和 someFunction 的分析器结果?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。