파이썬에서 전역변수(global variable)는 프로그램 전체에서 접근 가능한 변수입니다. 전역변수 과다 사용은 프로그램 복잡성을 높일 수 있지만, 디버깅이나 특정 상황에서는 매우 유용하게 활용될 수 있습니다.
이 포스팅에서는 전역변수의 개념부터 실제 활용 방법까지 상세히 알아봤습니다.
프로그래밍에서 변수의 스코프(scope)는 매우 중요한 개념입니다. 지역변수와 전역변수는 아래와 같이 사용 범위에 차이가 있습니다.
파이썬에서는 함수 내부에서 변수를 선언하면, 지역변수로 취급됩니다. 함수 내부에서 전역변수를 사용하거나 수정하려면 global 키워드를 활용해야 합니다.
파이썬에서 전역변수를 선언하고 사용하는 방법은 크게 두 가지가 있습니다.
전역변수는 다음과 같은 상황에서 유용하게 활용됩니다.
전역변수는 편리하지만 신중하게 사용해야 합니다. 과도한 전역변수 사용은 코드의 가독성을 떨어뜨리고 유지보수를 어렵게 만듭니다. 이에 다음 사항을 고려하세요.
아래는 전역변수와 global 키워드를 활용하는 간단한 예제입니다.
# 함수 외부에서 전역변수 선언 counter = 0 def increment(): global counter # 전역변수를 수정하기 위해 선언 counter += 1 print("현재 카운터 값:", counter) def display(): print("최종 카운터 값:", counter) increment() # 출력: 현재 카운터 값: 1 increment() # 출력: 현재 카운터 값: 2 display() # 출력: 최종 카운터 값: 2
이 예제는 counter 변수를 전역변수로 선언하고, 함수 내에서 global 키워드를 통해 수정하는 과정을 보여줍니다.
global 키워드를 사용하지 않아도 함수 안에서 읽기는 가능합니다. 하지만 이렇게 사용하면 디버깅이 어려워집니다. 그래서 함수 안에서 읽을 때도 global 키워드 사용을 추천합니다.
Q1: 전역변수를 사용하지 않고도 데이터를 공유할 수 있나요?
A1: 네, 클래스 변수나 함수 매개변수를 사용하여 데이터를 공유할 수 있으며, 필요에 따라 디자인 패턴(예: 싱글톤)을 적용할 수도 있습니다.
Q2: global 키워드 없이 전역변수를 수정할 수 있나요?
A2: 아닙니다. 함수 내부에서 전역변수를 수정하려면 반드시 global 키워드를 사용해야 합니다. 그렇지 않으면 새로운 지역변수가 생성됩니다.
Q3: 전역변수를 남용하면 어떤 문제가 발생할 수 있나요?
A3: 코드의 가독성이 떨어지고, 디버깅 및 유지보수가 어려워질 수 있으며, 변수 값의 예측이 어려워지는 문제가 있습니다.
송대관 가끔은 예상치 못한 이별이 우리 가슴을 더 아프게 합니다. 국민가수 송대관의 갑작스러운 별세 소식은…
윈도우 pyenv 파이썬 버전 관리 파이썬을 쓰다 보면, 다양한 프로젝트에서 여러가지 버전을 사용해야 하는 일이…
제미나이 LLM 기술이 날로 발달하며, 가격도 시간이 흐를수록 저렴해지고 있습니다. DeepSeek는 오픈소스로 PC에 다운로드해 무료로…
파이썬 교육 "파이썬 배우고 싶은데 너무 어려워서 엄두가 안 나요..." 🤔 "코딩 강의는 많은데, 다…
파이썬 실행파일 만들기 파이썬은 뛰어난 가독성과 유연성 덕분에 많은 개발자들이 선호하는 프로그래밍 언어입니다. 종종 배포를…
LG 스탠바이미 2세대 LG 스탠바이미는 휴대용 디지털 기기로서 많은 사용자의 관심을 받고 있는 제품입니다. 이…