Python
-
지역변수와 전역변수 in PythonPython 2021. 7. 6. 15:51
C언어 계열 혹은 Java에서는 메소드 상위에 변수를 선언하고 메소드 안에서 사용하면 자동으로 해당 이름의 변수가 매칭되어 사용된다. 하지만 Python은 조금 다르다. a = 0 def func(): a += 1 func() print(a) # UnboundLocalError: local variable 'a' referenced before assignment 위와 같은 코드를 실행하면 다음과 같은 에러가 발생한다. UnboundLocalError: local variable 'a' referenced before assignment local 변수인 a가 할당되기 전에 참조되었다고 한다. 분명히 상단에서 a를 선언했건만 어째서 해당 에러가 발생하는 것일까? 이제 밑의 코드를 확인해보자. a = 0 ..