这是一个简单程序的大纲
# some pre-defined constants
A = 1
B = 2
# function that does something critical
def foo(num1, num2):
# do something
# main program.... do something to A and B
for i in range(20):
# do something to A and B
# and update A and B during each iteration
import timeit
t = timeit.Timer(stmt="foo(num1,num2)")
print t.timeit(5)
我只是不断地得到“全球名字foo没有定义”。。。。。 有人能帮我吗?谢谢!
代码段必须是自包含的-它们不能进行外部引用。必须在语句字符串或设置字符串中定义值:
更好的是,重写代码以不使用全局值。
假设您的模块文件名是test.py
函数可以在
timeit
中使用参数。如果这些参数是使用闭包创建的,我们可以通过将它们包装到另一个函数中来添加这些行为。或者更短,我们可以使用functools.partial而不是显式闭包声明
相关问题 更多 >
编程相关推荐