Python调试、性能分析、测试及扩展模块开发
1. 调试、性能分析与测试工具
1.1 性能分析工具
在性能分析方面,有几个重要的方法用于输出分析报告:
- s.print_stats(restriction [, ...])
:将性能分析报告打印到标准输出,排序顺序与最后一次 sort_stats()
方法相同。参数用于排除报告中的条目,每个限制条件可以是整数(选择最大行数)、小数(选择行数的百分比)或正则表达式(用于匹配打印的名称)。
- s.print_callers(restrictions [, ...])
:打印性能分析数据库中每个函数的调用者列表,排序与 print_stats()
相同。
- s.print_callees(restrictions [, ...])
:打印每个函数调用的函数列表,限制条件与 print_stats()
含义相同。
1.2 timeit 模块
timeit
模块用于对简单的 Python 代码进行计时。
1.2.1 Timer 类
import timeit
t = timeit.Timer("math.sqrt(10.0)", "import math")
print "%s seconds" % t.timeit(1000000)