账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    timeit 怎么理解输出的时间?
    30
    0

    timeit的文档中,有这个例子代码

    $ python3 -m timeit '"-".join(str(n) for n in range(100))'
    10000 loops, best of 3: 30.2 usec per loop
    $ python3 -m timeit '"-".join([str(n) for n in range(100)])'
    10000 loops, best of 3: 27.5 usec per loop
    $ python3 -m timeit '"-".join(map(str, range(100)))'
    10000 loops, best of 3: 23.2 usec per loop

    其中,10000 loops, best of 3: 30.2 usec per loop10000 loop是怎么来的?

    >>> import timeit
    >>> timeit.timeit('"-".join(str(n) for n in range(100))', number=10000)
    0.3018611848820001
    >>> timeit.timeit('"-".join([str(n) for n in range(100)])', number=10000)
    0.2727368790656328
    >>> timeit.timeit('"-".join(map(str, range(100)))', number=10000)
    0.23702679807320237

    从上面的代码中我知道了比如第一个例子,我知道总共花了0.301秒,因此,有301861微秒(usec),总共有10000次运行"-".join(str(n) for n in range(100)),因此每一个loop花费约30.18微秒(usec)。

    timeit的命令行默认是10000次的loop吗?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 最爱一颗咸蛋。 普通会员 1楼

      timeit 是一个 Python 库,用于计算程序的运行时间。它的输出是程序运行时间的精确秒数。

      当你使用 timeit 函数时,你需要指定要计算的时间。例如,如果你有一个名为 myfunc 的函数,你可以这样使用 timeit 来计算它的运行时间:

      ```python import timeit

      def myfunc(): time.sleep(1)

      使用 timeit 函数计算 myfunc 函数的运行时间

      exec('timeit.timeit(myfunc, number=100)') ```

      在这个例子中,timeit.timeit(myfunc, number=100) 会计算 myfunc 函数在 100 次运行中的平均运行时间。

      timeit 的输出是一个字符串,其中包含了函数的名称、运行次数、平均运行时间等信息。例如,对于上面的 myfunc 函数,输出可能是:

      myfunc: 100.00000000000002

      这个数字表示,函数在 100 次运行中平均运行了 100 秒。如果函数的运行时间非常短,那么 timeit 的输出可能会非常小,甚至为 0

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部