多次调用print函数。我想计算函数的时间。我写了代码,
import timeit
class UserClass:
def callname(self):
print("HiTom")
if __name__ == '__main__':
def test():
user = UserClass()
user.callname()
test()
mtime = timeit.timeit(lambda: test())
print(mtime)
当我运行代码时," Hi Tom"被称为很多次。 我真的不明白为什么会发生这样的事情。
我重写了
mtime = timeit.timeit(test(), number=1)
但是ValueError:stmt既不是字符串也不是可调用错误。我怎样才能建立理想的系统?我的代码有什么问题?
答案 0 :(得分:0)
你必须
stmt
字段和globals
字典,以便timeit
找出test
函数的来源
>>> timeit.timeit("test()", number=1, globals=globals())
HiTom
3.45029984600842e-05