본문 바로가기
프로그래밍/파이썬(Python)

[Python] 파이썬 지역변수와 전역변수 사용 방법 및 정리

by virusuk 2023. 3. 28.
반응형

파이썬에서는 선언한 변수의 위치에 따라 유효한 범위와 메모리의 할당이 달라집니다.

 

지역 변수

  • 함수 내에 선언된 변수입니다.
  • 지역 변수는 메모리 구조상 스택 영역에 저장되며, 함수의 호출과 함께 할당되어 함수의 호출이 완료되는 시점에 소멸됩니다.

전역 변수

  • 함수 밖의 전역 공간에 선언된 변수이며, 함수 내에서 사용하기 위해서 global 키워드를 사용합니다.
  • 전역 변수는 메모리 구조상 데이터 영역에 저장되며, 프로그램 시작과 함께 할당되어 프로그램이 종료되면 소멸됩니다.
파이썬 지역 변수와 전역 변수의 유효한 범위와 예시

예시 1

  • 일반적인 지역변수 사용합니다.
def func1():
    var = "지역 변수"
    print(var)
    
func1()

출력:
지역 변수

 

예시 2

  • 일반적인 전역변수 사용합니다.
var1 = "전역 변수"

def func2():
    var2 = "지역 변수"
    print(var1)
    print(var2)
    
func2()

출력:
전역 변수
지역 변수

 

 

예시 3

  • 함수 내의 지역 변수를 선언하고, 함수 밖의 전역 변수를 선언합니다.
  • global 키워드를 사용하여 함수 내에 전역 변수의 값을 재 할당하여 출력합니다.
  • 즉, 함수 내에 전역 변수를 제어합니다.
var1 = "전역 변수"

def func3():
    var2 = "지역 변수"
    global var1
    var1 = "함수내 전역 변수의 값 재할당"
    print(var1)
    print(var2)

print(var1)    
func3()
print(var1)

출력:
전역 변수
함수내 전역 변수의 값 재할당
지역 변수
함수내 전역 변수의 값 재할당

 

마치며...

지역 변수와 전역 변수의 차이를 알아보았습니다.

또한, 지역/전역 변수의 선언한 위치에 따라 유효한 범위의 특성을 잘 파악하여 애플리케이션 설계 및 개발에 도움이 되길 바라겠습니다.

반응형