x = 1


def call():

    print(x)

    x = 2


call()


이거 에러남


처음 print(x)는 전역변수 x를 출력하겠거니 생각하기 쉬운데

함수 내부의 어딘가에서 지역변수 x에 할당하면

함수 내부 전체의 모든 x는 등장 시점이 할당 전이든 후든 지역변수를 가리킨다고 함


결국 x는 지역변수를 가리킨다고 정해놨지만 정작 할당은 안 되어있어서 에러가 남