본문 바로가기
programming/Python

파이썬 로컬 스코프 지역 변수의 접근 유효 범위 python local scope

by 개코 - 개발과 코딩 2021. 11. 21.

파이썬에서 로컬 스코프는 지역 변수와 의미의 비슷하다. 지역 변수는 함수 내 또는 클래스 내에 존재하고 그 내부에서만 사용이 가능하다. 스코프는 변수의 위치에 따라 바라보는 곳이 다르다. 설령 전역변수와 이름이 같더라도 함수 내에 있다면 함수 내의 변수를 가리킨다.

파이썬 로컬 스코프 지역 변수의 접근 유효 범위
python local scope

파이썬의 스코프는 변수의 유효범위를 말한다.

변수의 사용범위라 생각해도 무방하다.

파이썬이 아니더라도 프로그래밍에 어느정도 익숙한 사람이라면 이미 알고 있다.

지역변수와 전역변수의 차이라고 해도 무방하다.

스코프는 변수가 어디에서 접근이 가능한지 유효범위를 말하고

지역 스코프는 함수 또는 클래스 내부에 존재하면 그 범위내에서만 접근이 가능하다.

사용방법

지역 스코는 함수 내에 있다면 함수 내에서만 접근이 가능하다.

클래스 내부에 있다면 클래스 내부에서만 접근이 가능하다.

또는 객체화 된 클래스를 통해 접근이 가능하다.

변수의 이름이 다르다면 상관이 없지만, 동일한 이름을 가진 변수가 전역과 지역에 동시에 있다면 지역변수를 우선적으로 접근한다.

이것은 다른 프로그래밍 언어에서도 마찬가지이다.

샘플코드

몇가지 테스트를 해 보도록 한다.

비교를 위해 전역변수도 같이 사용하여 비교하도록 한다.

아래의 코드에서 지역변수의 접근 유효 범위를 알 수 있다.

print("----------")

vScope = "전역"

def fnScope() : #-{
    
    vScope = "지역"
    print(type(vScope), vScope)
    
#-}

print(type(vScope), vScope)

fnScope()

print("----------")

결과화면부터 확인해 보자.

지역 스코프는 변수가 함수내 또는 클래스 내에서만 접근이 가능하다고 언급했다.

위의 결과에서처럼 함수를 호출했을 때 출력되는 변수값은 전역변수와 변수명이 같더라도

지역변수를 바라보고 있는 것을 알 수 있다.

즉, 변수의 위치가 함수 내에 있다면 스코프는 함수 내의 변수를 바라보고 있다고 볼 수 있다.

반응형

댓글