파이썬에서는 다른 scope내에서 전역변수값을 바꾸기위해
변수명 = 값 을했으나, 해당 scope 밖에서 전역변수를 확인해보면 전혀 바뀌지않는다.
start = 10
for _ in _ range():
#start = 20 <= 이러면 지역변수로 선언되서, 해당블럭이 끝나면
#사라지는 휘발성변수가된다.
global start # global로 선언
start = 20 # 값할당
관련된 에러로,
"SyntaxWarning: name '변수명' is assigned to before global declaration" 가 있는데,
흔히 if name == ‘main‘: 내에서 전역변수에 global 키워드를 쓰려고할때이다. 아래는 필자가 겪은경우이다.
이외에 자연스럽게 다뤘던 부분인, 전역변수인 리스트객체는 global 없이도 다른 블럭에서 다룰 수 있었는데, 이는 예외 사항인것같다.