Python 글로벌 변수 키워드 상세 정보
Python의 변수 역할 영역
일반적으로 함수 체외에서 정의된 변수는 전역 변수가 되고 함수 내부에서 정의된 변수는 국부 변수라고 한다.
전역 변수는 모든 작용역을 사용할 수 있습니다. 국부 변수는 본 함수에서만 사용할 수 있습니다. 변수의 사용 순서는 국부 변수 > 전역 변수입니다. 즉, 국부 변수를 우선적으로 사용합니다.
그러면 문제가 생겼습니다. 함수 안에서 전역 변수를 사용하거나 전역 변수의 값을 바꾸려면 어떻게 해야 합니까?
Python 글로벌 변수 키워드
함수 내에서 전역 변수를 사용하는 문제를 해결하기 위해python은 글로벌 키워드를 추가하여 그 특성을 이용하여 변수의 작용역을 지정할 수 있습니다.
Python 전역 변수 글로벌 키워드의 역할: 변수 var는 전역적
코드 인스턴스
인스턴스 1:
함수 우선 사용 국부 변수
str = 'global'
def func1():
str = 'local'
print(str)
func1()
print(str)
결과:local
global
인스턴스 2:
국부 변수가 없는 상황에서 전역 변수를 사용하다
str = 'global'
def func1():
print(str)
func1()
print(str)
결과:global
global
인스턴스 3:
전역 변수의 값을 변경합니다. 실례 1을 통해 알 수 있듯이 함수 내에 값을 부여하면 전역 변수의 값을 바꿀 수 없기 때문에 글로벌 키워드가 필요합니다.
str = 'global'
def func1():
global str
str = 'local'
print(str)
func1()
print(str)
결과:local
local
기타 용법
같은 글로벌 문장으로 여러 개의 전역 변수를 지정할 수 있습니다.
예:
global var1, var2, var3
특수 유형
문자열, 숫자 형식은 국부적으로 수정될 수 없습니다. 글로벌 키워드를 사용하지 않는 한 목록, 사전은 수정할 수 있지만 값을 다시 부여할 수 없습니다. 값을 다시 부여해야 한다면 함수 내부에서 글로벌 변수를 사용해야 합니다.
코드 인스턴스 1:
list = ['global', 'jb51.net']
def func1():
list.append('www.jb51.net')
print(list)
func1()
print(list)
결과:['global', 'jb51.net', 'www.jb51.net']
['global', 'jb51.net', 'www.jb51.net']
위의list는 글로벌을 사용하지 않았지만 값이 바뀌었습니다. 목록은 국부적으로 수정될 수 있음을 나타냅니다.
코드 인스턴스 2:
list = ['global', 'jb51.net']
def func1():
list = ['docs.jb51.net']
print(list)
func1()
print(list)
결과:['docs.jb51.net']
['global', 'jb51.net']
국부 변수 부여 값은 전역 변수의 값을 바꿀 수 없습니다
코드 인스턴스 3:
list = ['global', 'jb51.net']
def func1():
global list
list = 'docs.jb51.net'
print(list)
func1()
print(list)
결과:docs.jb51.net
docs.jb51.net
글로벌 키워드를 사용한 후 변수가 다시 부여됩니다
본고는 주로 Python 전역 변수 글로벌 키워드의 사용 방법을 설명하였으며, 더 많은 Python 전역 변수의 사용에 관해서는 아래의 링크를 보십시오
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Python의 None과 NULL의 차이점 상세 정보그래서 대상 = 속성 + 방법 (사실 방법도 하나의 속성, 데이터 속성과 구별되는 호출 가능한 속성 같은 속성과 방법을 가진 대상을 클래스, 즉 Classl로 분류할 수 있다.클래스는 하나의 청사진과 같아서 하나의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.