내 변수는 어디서 살고 어디서 죽을까? 변수 스코프(Scope) 완벽 정리
Day 12 지역 변수 vs 전역 변수: 변수의 '활동 범위' 이해하기 내 변수는 어디서 살고 어디서 죽을까? 변수 스코프(Scope) 완벽 정리 안녕하세요! 11일차에 함수를 배우면서 이런 경험 없으셨나요? "어? 함수 안에서 만든 변수를 밖에서 썼더니 에러가 나요!" 혹은 "밖에서 만든 변수를 함수 안에서 바꿨는데 안 바뀌어요!" 오늘은 변수가 프로그램 어디까지 영향을 미치는지 결정하는 지역 변수(Local) 와 전역 변수(Global) 의 개념을 확실히 잡아보겠습니다. 1. 우리 집 안에서만! 지역 변수 함수 안에서 만들어진 변수는 지역 변수 라고 합니다. 이 변수는 함수라는 '집' 안에서만 살 수 있고, 함수가 끝나면 흔적도 없이 사라집니다. def my_house(): inner_var = "함수 안의 보물" print(inner_var) my_house() # print(inner_var) 2. 마을 전체의 공유 재산, 전역 변수 함수 밖에서 만들어진 변수는 전역 변수 입니다. 프로그램 전체에서 누구나 읽을 수 있는 공용 변수와 같습니다. global_var = "나는 공용 변수" def check_global(): print(global_var) # 밖에서 만든 걸 안에서도 읽을 수 있어요. check_global() print(global_var) 3. 주의! 함수 안에서 전역 변수 수정하기 기본적으로 함수는 밖의 전역 변수를 '읽기'만 할 수 있습니다. 만약 함수 안에서 전역 변수의 값을 직접 바꾸고 싶다면 global 이라는 키워드를 써서 파이썬에게 허락을 받아야 합니다. ...