Python的profile模块:<string>:1(?)

25 投票
1 回答
7425 浏览
提问于 2025-04-16 17:26

我正在使用Python的(v2.4)profile模块来分析一个numpy脚本的性能,结果发现下面这个部分占用了大部分的执行时间:

ncalls  tottime  percall  cumtime  percall filename:lineno(function)
 256/1    0.000    0.000    7.710    7.710 <string>:1(?)

可惜的是,这个部分的表现让人很难在网上找到相关信息。

我该如何弄清楚这到底是什么呢?

补充说明 这个性能分析器是通过命令行运行的,命令是:python -m profile -s cumulative script.py

1 个回答

26

忽略这一行。这是性能分析工具实现时留下的痕迹,并没有提供任何有用的信息。看看它的“tottime”值:0.000。“tottime”表示执行“<string>:1(?)”这段代码所花费的时间,不包括它下面调用的其他代码所花费的时间。所以,这里没有花费任何时间。“cumtime”和“percall”值较大,因为它们包括了子调用所花费的时间。想了解更多细节,可以查看这个链接

撰写回答