全局名称“x”未使用timei定义

2024-10-01 22:40:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个简单的Fibonacci函数,它使用回忆录,它自己工作得很好。然而,当我想用timeit计时时,我得到“NameError:global name'memo'is not defined”,尽管它是。在

#!/usr/bin/python

import sys
import timeit

memo = [0] * 100

def fibmem(n,memo):
    #function things

for x in range(1,40):

    mytime2 = timeit.Timer('fibmem('+str(x)+', memo)','from __main__ import fibmem')
    delta2 = mytime2.timeit(1)
    print str(x) + ' ' +str(delta2)
    memo[:] = []

我试着查找它可能是什么,但是大多数答案都包含了from __main__ import,这不是问题所在。我确定这还是与范围界定有关,但我对时间很陌生,所以我不知道。在


Tags: 函数fromimportmainglobalfibonacci计时memo

热门问题