我只是在 python 中玩timeit,下面的代码工作正常:
def mysleep(n):
import time
time.sleep(n)
import timeit
for k in range (1,5):
def mytime():
mysleep(k)
t1 = timeit.Timer("mytime();", "from __main__ import mytime")
print k, t1.timeit(1)
Run Code Online (Sandbox Code Playgroud)
但如果我将相同的代码放入一个函数中,则每次的k时间约为 3 秒。
def mytest():
import timeit
for k in range (1,5):
def mytime():
mysleep(k)
t1 = timeit.Timer("mytime();", "from __main__ import mytime")
print k, t1.timeit(1)
mytest()
Run Code Online (Sandbox Code Playgroud)
为什么我的函数内的代码不起作用以及如何修复它?