프로그래밍언어/파이썬[초급]
[파이썬][초급] Chapter25. 변수의 범위(Scope)
about_IT
2025. 5. 16. 16:13
728x90
파이썬에서 변수는 정의된 위치에 따라 유효 범위가 달라집니다. 이를 변수의 범위(Scope)라고 하며, 코드의 구조에 따라 변수에 접근할 수 있는지 여부를 결정합니다. 이번 장에서는 전역 변수와 지역 변수, 그리고 scope 관련 키워드에 대해 알아보겠습니다.
● 지역 변수(Local Variable)
함수 내부에서 선언된 변수는 지역 변수로, 함수 내부에서만 유효합니다.
def func():
x = 10
print(x)
func()
# print(x) # 오류 발생: x는 함수 밖에서 인식되지 않음
● 전역 변수(Global Variable)
함수 외부에서 선언된 변수는 전역 변수로, 코드 전체에서 사용할 수 있습니다.
x = 5
def show():
print(x)
show() # 5
● global 키워드
함수 내부에서 전역 변수를 수정하려면 global
키워드를 사용해야 합니다.
x = 10
def change():
global x
x = 20
change()
print(x) # 20
● nonlocal 키워드
중첩 함수에서 바깥 함수의 지역 변수를 수정하려면 nonlocal
키워드를 사용합니다.
def outer():
x = 5
def inner():
nonlocal x
x = 10
inner()
print(x) # 10
outer()
● 이름 충돌 주의
지역 변수와 전역 변수의 이름이 같으면, 함수 내부에서는 지역 변수가 우선합니다.
x = 100
def func():
x = 50
print(x) # 50
func()
print(x) # 100
● 마무리
이번 장에서는 파이썬 변수의 유효 범위, 전역/지역 변수의 차이, global과 nonlocal 키워드의 역할을 배웠습니다. 변수 범위는 코드의 안정성과 디버깅에도 큰 영향을 주므로 반드시 정확히 이해하고 사용해야 합니다. 다음 장에서는 예외 처리에 대해 배워보겠습니다.
728x90