鱼C论坛

 找回密码
 立即注册
楼主: 小甲鱼

[扩展阅读] timeit 模块详解(准确测量小段代码的执行时间)

  [复制链接]
发表于 2018-4-23 11:01:53 | 显示全部楼层
study
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-4-25 17:36:15 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-4-26 10:44:01 | 显示全部楼层
非常详细,写的很到位
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-4-26 20:55:19 | 显示全部楼层
学习学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-4-27 10:44:15 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-4-27 18:04:04 | 显示全部楼层
好好学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-4-29 23:09:37 | 显示全部楼层
mark
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-5-2 10:28:56 | 显示全部楼层
学习学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-2 13:38:41 | 显示全部楼层
休息一下继续学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-3 10:37:06 | 显示全部楼层
谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-5-4 03:20:01 | 显示全部楼层
还有隐藏内容??
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-4 15:11:56 | 显示全部楼层
good
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-5-5 16:34:52 | 显示全部楼层
感谢小甲鱼!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-6 12:57:54 From FishC Mobile | 显示全部楼层
只是想看代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-7 17:57:17 | 显示全部楼层
正文没看太懂,看看代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-8 10:35:40 | 显示全部楼层
小甲鱼老师,我有个问题:使用timeit模块测量小段代码的执行时间,特别是对多行代码的时候,使用“”“多行代码”“”这种方式赋值stmt,相比于使用setup和globals设置命名空间的测量时间都小。这是为什么,同样的代码测量的执行时间却大不一样!代码如下所示
>>> s = """
class A:
        def func1(self):
                for x in range(100):
                        self.count += x
                return self.count
        def __init__(self):
                self.count = 0

a = A()
a.func1()
"""
>>> timeit.timeit(stmt=s, number=100000)
2.182303924016196
>>> a
<__main__.A object at 0x03207D70>
>>> timeit.timeit(stmt = "func1()", setup = 'from __main__ import func1 ')
4.584396307330735
>>> timeit.timeit(stmt = "func1()", setup = 'from __main__ import func1 ')
4.5826148827454745
>>> repeat(stmt = "func1()", setup = 'from __main__ import func1 ')
Traceback (most recent call last):
  File "<pyshell#83>", line 1, in <module>
    repeat(stmt = "func1()", setup = 'from __main__ import func1 ')
NameError: name 'repeat' is not defined
>>> timeit.repeat(stmt = "func1()", setup = 'from __main__ import func1 ')
[4.566492185809238, 4.564154308761772, 4.560875233704792]
>>> timeit('a.func1()',globals = globals())
Traceback (most recent call last):
  File "<pyshell#85>", line 1, in <module>
    timeit('a.func1()',globals = globals())
TypeError: 'module' object is not callable
>>> a
<__main__.A object at 0x03207D70>
>>> a.func1()
14850
>>> timeit.timeit('a.func1()',globals = globals())
14.001687110608145
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-8 15:34:01 | 显示全部楼层
hi
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-5-8 19:12:58 | 显示全部楼层
学习一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-10 14:46:11 | 显示全部楼层
回复一下看看源代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-10 22:53:35 | 显示全部楼层
good
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-28 19:39

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表