python测试代码运行时间_Python 模块 timeit-测试一小段代码的执行速度

15318327315602c8c242efb

模块 timeit 提供了简单的接口用来测试一小段 Python 代码的执行时间。它提供了精确的时间函数和有效减少程序启动的退出的时间消耗,能多次执行一小段 Python 代码。

模块

timeit 提供了一个公共的类 Timer,它的构造函数接收一小段代码和一段初始化设置语句。初始化后调用方法 timeit() 就会重复执行代码片段,可以传入参数控制执行的次数,默认是 1000000,返回的时间精度单位是秒。

例子

下面是使用 Timer 的一个简单的例子。

15318327588839e1854461f

执行:

1531832759076ca17acdcde

第一次调用了 timeit(2) 执行了2次,然后打印了时间。

第二次调用了方法 repeat(),它的第一个参数整体是执行的次数,包括初始化语句。第二个参数和 timeit 一样,代码片段执行多少次,查看输出可以看到。最后返回一个时间的列表,列表数量和第一个参数一致,执行多少次,返回多少个时间。

多个语句

下面是更复杂的例子,初始化语句包括多条语句,多条语句使用分号分隔。定义了两个变量,一个是非空的列表,另一个空字典。执行代码把列表中的元素保存到字典。

1531832759071962d760734

执行:

153183275889320477854a2

命令行执行

除了使用编程方式调用,timeit 还提供了命令行选项测试。

运行一个模块,使用 -m 选项告诉 Python 解释器加载指定的模块。

python3 -m timeit

下面显示帮助信息。

15318328189960e1f2aa3a7

命令行传递参数不和编程方式一样,编程方式是一个长字符串,命令行是使用多个字符串,缩进使用空格符。

15318328189975349d03333

如果要测试的代码比较复杂,可以放到一个单独的文件中,然后在命令行运行。

15318328190355a2e1da3c3

执行:

1531832818974241cea4b00

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值