此代碼給出了錯誤:UnboundLocalError: local variable 'LINES' referenced before assignment
但LINES
已清楚初始化,因爲如果我註釋掉print語句下面的行,它將不會引發錯誤並按預期打印len(lines) = 0
。我不理解python的一些東西嗎?這裏發生了什麼?python全局變量for循環中未定義
LINES = []
def foo():
for prob in range(1,3):
print "len(lines) = %d" % len(LINES)
LINES = []
if __name__ == "__main__":
foo()
我明白了。但是爲什麼當'LINES = []'被註釋掉或被'LINES.append(prob)'替換時它工作? – anthonybell