본문 바로가기
Python/Python FAQ

Python 함수 내에서 전역 변수 사용하기, Using global variables in a function

by 베타코드 2023. 5. 4.
반응형

질문


어떻게 함수 내에서 전역 변수를 만들거나 사용할 수 있나요?

어떻게 한 함수에서 정의된 전역 변수를 다른 함수 내에서 사용할 수 있나요?


global 키워드를 적절하게 사용하지 않으면 종종 UnboundLocalError가 발생합니다. 이에 대한 정확한 규칙은 UnboundLocalError on local variable when reassigned after first use에서 설명됩니다. 일반적으로, 이 설명이 필요한 경우 질문을 중복으로 답변하고, global 키워드를 알아야하는 경우 질문을 중복으로 답변하십시오.


답변


다른 함수 내에서 전역 변수를 사용하려면 global값을 할당하는 각 함수 내에서 선언해야합니다:

globvar = 0

def set_globvar_to_one():
    global globvar    # globvar의 전역 복사본을 수정해야합니다.
    globvar = 1

def print_globvar():
    print(globvar)     # globvar의 값을 읽는 데 전역 선언이 필요하지 않습니다.

set_globvar_to_one()
print_globvar()       # 1을 인쇄합니다.

globvar = 1이 로컬 변수를 생성하는지 전역 변수를 변경하는지 불명확하기 때문에 Python은 로컬 변수를 만들고 global 키워드로 다른 동작을 명시적으로 선택하도록합니다.

모듈 간에 전역 변수를 공유하려는 경우 다른 답변을 참조하십시오.

반응형

댓글