프로그래밍 언어에서 변수를 분류하는 방법은 여러가지가 있다. 그 중에 하나로 전역변수와 지역변수의 개념이 있다. 일반적으로 전역변수는 프로그램에 혼란을 주기 때문에 사용을 권장하지 않는다. 하지만, 코딩을 하다보면 전역변수를 사용하면 더 쉽게 코딩할 수 있는 경우가 있다. 그 외에도 유용하게 사용할 수 있는 방법이 있다. 오늘은 파이썬 global 전역변수 사용방법과 사용예에 대해서 알아보도록 하겠다.

 

 

파이썬 코딩

 

 

전역변수를 설명하기 위해서는 파이썬 함수가 필요하다. 함수 안의 변수들은 지역변수로 함수 영역 밖에서는 호출하여 사용할 수 없다. 예를 들어 아래와 같은 경우, a변수를 함수 밖에서는 사용할 수 없다.

def test():
    a = 3
    b = 2
 
    return a + b
 
print(test())
print(a)

 

 

함수에 사용된 a는 지역변수이기 때문에, 함수 바깥의 영역에서는 호출하여 사용할 수 없다. 사용을 하려면 아래와 같이 a를 전역변수로 선언해야 한다.

 

 

전역변수를 선언하는 방법은?

전역변수를 선언하는 방법은 변수명 앞에 global을 붙이는 것이다. 아래와 같이 함수 안에서 global을 붙여도 되고, 함수 밖에서 global을 붙여도 된다. 하지만 함수 밖에서 선언하였다면 함수 안에서 사용을 명시해주어야 한다.

 

1) 함수 안에서 global로 전역변수 선언하기

def test():
    global a
    a = 3
    b = 2
 
    return a + b
 
print(test())
print(a)

 

2) 함수 밖에서 global로 전역변수 선언하기

함수 밖에서 global로 전역변수 선언을 하였어도, 함수 안에도 전역변수 사용을 또 명시해 주어야 한다. 함수 안에서 전역변수 사용을 명시해주지 않으면 해당 변수는 지역변수로 처리되고 만다. 아래 코드에서 함수 안에 global a를 삭제하면, a값은 1이 된다.

global a
a = 1
 
def test():
    global a
    a = 3
    b = 2
 
    return a + b
 
 
print(test())
print(a)

 

 

정리를 하고 보니 함수 안이나 밖에서 전역변수를 선언하는 것보다, 함수 안에서 전역변수 사용을 명시해 주는 것이 중요하겠다.

 

 

유용하게 사용할 수 있는 방법은?

전체 코드에서 체크해야 하는 값이 있을 때 전역변수를 사용하면 편리하다. 특히 함수가 있는 코드를 실행하거나 수정할 때, 에러가 발생하거나 값이 안 맞으면 확인하기가 곤란하다. 이럴 때 함수 안의 변수를 전역변수로 선언하면, 코드를 실행하며 함수 안의 값들을 체크할 수 있기 때문에 유용하다. 프로그램을 디버깅할 때 편리한 방법인 듯 하다.

 

 

오늘은 이렇게 파이썬 global 전역변수 사용방법과 사용예에 대해서 알아보았다. 전역변수는 프로그램을 혼란스럽게 만들기 때문에 사용하지 않는 것이 좋다고 배웠다. 하지만, 유용하게 사용할 수 있는 방법들도 있고 불가피하게 사용해야 하는 경우도 발생한다. 변수 앞에 global만 붙이면 되니 사용하기는 편리하다. 이번 기회에 잘 알아두어 유용하게 써먹어 보도록 하자.

 

필자의 블로그에는 이 외에도 다양한 파이썬 내용들이 많으니, 재미있게 구경해 주기를 바란다!

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기

댓글을 달아 주세요

">