Python 범위
변수는 생성된 영역 내에서만 사용할 수 있습니다. 이를 범위라고 합니다。
지역 범위
함수 내부에서 생성된 변수는 해당 함수의 지역 범위에 속하며, 함수 내부에서만 사용할 수 있습니다。
예제
함수 내부에서 생성된 변수는 해당 함수 내부에서 사용할 수 있습니다:
def myfunc(): x = 100 print(x) myfunc()
함수 내의 함수
위 예제와 같이, 변수 x는 함수 외부에서 사용할 수 없지만, 함수 내의 모든 함수에서 사용할 수 있습니다:
예제
함수 내의 함수에서 지역 변수에 접근할 수 있습니다:
def myfunc(): x = 100 def myinnerfunc(): print(x) myinnerfunc() myfunc()
전역 범위
파이썬 코드 본체에서 생성된 변수는 전역 변수이며, 전역 범위에 belongs합니다。
전역 변수는 어떤 범위(전역 및 지역)에서도 사용 가능합니다。
예제
함수 외부에서 생성된 변수는 전역 변수이며, 누구나 사용할 수 있습니다:
x = 100 def myfunc(): print(x) myfunc() print(x)
이름 변수
함수 내부와 외부에서同名 변수를 사용할 경우, 파이썬은 그들을 두 개의 별도의 변수로 간주합니다. 하나는 전역 범위에서 사용 가능(함수 외부)이고, 하나는 지역 범위에서 사용 가능(함수 내부):
예제
이 함수는 지역 변수 x를 인쇄한 후 코드가 전역 변수 x도 인쇄합니다:
x = 100 def myfunc(): x = 200 print(x) myfunc() print(x)
Global 키워드
전역 변수를 생성해야 하지만 로컬 범위에卡이면 global 키워드를 사용할 수 있습니다。
global 키워드는 변수를 전역 변수로 만듭니다。
예제
global 키워드를 사용하면 해당 변수는 전역 범위에 belongs합니다:
def myfunc(): global x x = 100 myfunc() print(x)
또한 함수 내부에서 전역 변수를 변경하려면 global 키워드를 사용하도록 합니다。
예제
함수 내부에서 전역 변수의 값을 변경하려면 global 키워드를 사용하여 해당 변수를 참조하세요:
x = 100 def myfunc(): global x x = 200 myfunc() print(x)