파이썬 global 키워드는 지역변수의 스코프를 전역변수의 스코프로 접근 범위를 확대한다. 쉽게 말해 지역변수의 값을 전역변수에 설정할 수 있다. global 키워드는 다른 프로그래밍 언어에서도 사용되고 있기도 하다. 물론, 그 사용빈도수는 적을 수 있지만, 파이썬 개발을 하는 경우 간혹 사용될 수 있다. 익혀두도록 하자.
파이썬 global 키워드 스코프를 전역으로 확대
파이썬 개발을 할 때 전역변수로 활용하는 주요 변수의 값을 변경하고 싶을 때가 있다.
파이썬 global 키워드는 함수 내에서 활용한 변수의 스코프를 전역변수에 스코프하여 접근할 수 있도록 한다.
무슨 말이야.
지역변수를 전역변수처럼 활용할 수 있다는 것이다.
말이 좀 이상하지만 코드를 보면 이해할 수 있다.
사용방법
함수 내에 사용한 변수의 스코프는 함수 내에서만 접근이 용이하다.
이 변수를 전역변수에 접근하기 위해 스코프를 전역변수에 지정할 필요가 있다.
이 때는 파이썬 global 키워드를 사용하여 스코프를 전역변수에 지정하도록 하면 된다.
쉽게 말해 전역변수와 동일한 지역변수를 global 키워드를 사용하여 전역변수에 접근할 수 있도록 하는 것이다.
vScope = "전역"
def fnGlobalScope() : #-{
global vScope
#-}
샘플코드
위의 코드를 기준으로 간단한 코드를 작성해 본다.
당연하겠지만 스코프를 활용하기 위해 전역변수명과 지역변수명은 동일해야 한다.
파이썬 global 키워드를 사용하여 스코프를 전역변수에 접근시키도록 해 본다.
코드가 좀 길어보인다.
다른 건 지나가고 global 키워드만 살펴보자.
print("----------")
vScope = "전역"
def fnLocalScope() : #-{
vScope = "지역"
print("fnLocalScope", type(vScope), vScope)
#-}
def fnGlobalScope() : #-{
global vScope
vScope = "지역"
print("fnGlobalScope", type(vScope), vScope)
#-}
print(type(vScope), vScope)
print("----------")
fnLocalScope()
print(type(vScope), vScope)
print("----------")
fnGlobalScope()
print(type(vScope), vScope)
print("----------")
결과화면을 보자
파이썬 global 키워드를 사용하고 안하고의 차이가 있다.
마지막 결과를 보면 지역변수의 스코프가 전역변수에 설정되어 값이 변경된 것을 알 수 있다.
'programming > Python' 카테고리의 다른 글
파이썬 모듈 만들기 목적 있는 외부 파이썬 파일 만들기 (0) | 2021.11.26 |
---|---|
파이썬 모듈의 사용 import 키워드 다른 파이썬 파일 불러오기 (0) | 2021.11.25 |
파이썬 스코프 변수명에 따른 접근 유효 범위 (0) | 2021.11.22 |
파이썬 전역 스코프 전역 변수의 접근 유효 범위 python global scope (0) | 2021.11.22 |
파이썬 로컬 스코프 지역 변수의 접근 유효 범위 python local scope (0) | 2021.11.21 |
댓글