Python 글로벌 변수 키워드 상세 정보

2439 단어 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 전역 변수의 사용에 관해서는 아래의 링크를 보십시오

좋은 웹페이지 즐겨찾기