У меня определена глобальная переменная
x=100
Этот код прекрасно работает
def fn():
x=1
z=x+1
print z #2
Но это не работает отлично
def f2():
z=x+1
print z
x=1
Traceback (most recent call last):
File "<pyshell#83>", line 1, in <module>
fn()
File "<pyshell#82>", line 2, in fn
z=x+1
UnboundLocalError: local variable 'x' referenced before assignment
Яне уверен, почему это произошло.Компилятор пытается интерпретировать x как локальный в случае 2, но x не был инициализирован?