我有一个.py配置文件,该文件设置了一组全局变量。其中有一个名为nMin的变量。 kNeighbors是另一个与nMin完全相同的全局变量。块中包含的所有其他变量都是局部变量
for i in range(PopLength):
noveltyMetric[i] = np.average(behavior[i][0:kNeighbors])
if noveltyMetric[i] > nMin:
...
在循环中,程序没有问题地引用了kNeighbors,但是在下一行我得到了错误:
分配前已引用本地变量'nMin'”
我正在PTVS 2017中运行它,当它停止并显示错误(在该行上暂停)时,我在“立即窗口”中调用nMin,它正确地调用了值且没有错误。当我调用语句noveltyMetric[i] > nMin
时,它将返回一个没有错误的布尔值。但是由于某种原因,它仍然无法在代码中执行该行,并坚持要在定义它之前先引用它。