You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用%timeit并通过-o参数将计时结果存入变量a?

使用%timeit的-o参数将计时结果存入变量的正确方法

不管是单行还是多行代码,核心是把变量赋值和%timeit的-o参数正确结合,以下是具体用法:

单行代码的情况

直接将整个%timeit命令作为赋值语句的右值,带上-o参数即可:

a = %timeit -o [x**2 for x in range(1000)]

执行后,变量a会保存一个TimeitResult对象,里面包含了计时的所有核心数据:

  • a.average:平均执行时间
  • a.stdev:时间标准差
  • a.timings:每一轮测试的时间列表

多行代码的情况

用%%timeit魔法命令时,把赋值和-o参数写在第一行,代码放在后续行:

a = %%timeit -o
total = 0
for x in range(1000):
    total += x**2

同样,执行后a会拿到对应的计时结果对象。

常见错误纠正

你之前写的%%timeit [-n<N> -r<R> [-t|-c] -q -p<P> -o]是语法错误,不需要加方括号,参数直接拼接即可。比如指定循环次数-n和重复轮次-r:

# 单行示例:执行100次循环,重复5轮
a = %timeit -n100 -r5 -o [x*3 for x in range(500)]

结果查看示例

赋值完成后,可以直接访问结果对象的属性查看具体数据:

print(f"平均执行时间:{a.average:.6f}秒")
print(f"时间标准差:{a.stdev:.6f}秒")

内容的提问来源于stack exchange,提问作者nastaran

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 13:52:20