Python:UnboundLocalError:局部变量' count'在转让之前引用

时间:2016-04-19 13:58:17

标签: python

我无法理解Python代码中的问题。它给了我以下错误:

    Traceback (most recent call last):
  File "main.py", line 77, in <module>
    main();
  File "main.py", line 67, in main
    count -= 1
UnboundLocalError: local variable 'count' referenced before assignment

以下是代码的一部分

我定义了全局变量

count = 3

然后我创建了方法主

def main():
    f = open(filename, 'r')

    if f != None:
        for line in f:

            #some code here

            count -= 1
            if count == 0: 
                break

这里可能有什么问题?

由于

1 个答案:

答案 0 :(得分:5)

count -= 1相当于count = count - 1count在本地定义之前正在进行评估。发生这种情况时,您希望在函数中明确地将count的范围设置为global(即在函数外部定义)。

def main():
    global count