>백엔드 개발 >파이썬 튜토리얼 >Python에서 변수 범위를 사용하는 방법

Python에서 변수 범위를 사용하는 방법

王林
王林앞으로
2023-05-12 15:01:061435검색

머리말

변수의 범위는 프로그램 코드가 변수에 접근할 수 있는 영역을 의미하며, 이 영역을 초과하면 다시 접근할 때 오류가 발생합니다. 프로그램에서 변수는 일반적으로 "유효한 범위"에 따라 "전역 변수"와 "로컬 변수"로 구분됩니다.

1. 지역 변수

지역 변수는 함수 내에서 정의되고 사용되는 변수를 말합니다. 즉, 함수 내부의 이름은 함수가 실행될 때만 생성됩니다. 함수 실행 전후에는 더 이상 모든 이름이 존재하지 않습니다. 따라서 함수 내부에 정의된 변수가 함수 외부에서 사용되면 NameError 예외가 발생합니다.

예를 들어 function이라는 함수를 정의하고, 함수 내부에 변수 poem(로컬 변수라고 함)을 정의하고, 여기에 값을 할당한 다음 변수를 출력하고, 마지막으로 함수 본체 외부에 다시 ​​poem 변수를 출력하는 코드,

def function():
    poem = '面朝大海,春暖花开'
    print('局部变量poem = ', poem)  # 输出局部变量的值
function()  # 调用函数
print('局部变量poem = ', poem)  # 在函数体外输出局部变量的值

위 코드를 실행하면 아래와 같이 예외가 표시됩니다.

Python에서 변수 범위를 사용하는 방법

2. 전역 변수

는 지역 변수에 해당합니다. 전역 변수는 함수 내부와 외부에서 작동할 수 있는 변수입니다. 전역변수는 주로 다음과 같은 두 가지 상황이 있습니다.

(1) 변수가 함수 외부에서 정의되면 함수 외부뿐만 아니라 함수 내부에서도 접근이 가능합니다. 함수 본문 외부에 정의된 변수는 전역 변수입니다.

예를 들어 전역 변수 poem을 정의한 후 함수 내에서 전역 변수 poem의 값을 출력하는 함수를 정의하면 다음과 같습니다.

poem = '花有重开日,人无再少年'  # 全局变量
def function():
    print('函数体内:全局变量poem =', poem)  # 在函数体内输出全局变量的值
function()  # 调用函数
print('函数体外:全局变量poem =', poem)  # 在函数体外输出全局变量的值

위 코드를 실행하면 다음 내용이 표시됩니다.

함수 본체: 전역 변수 시 = 꽃은 다시 피고 사람은 더 이상 젊지 않습니다
함수 외: 전역 변수 시 = 꽃은 다시 피어나고 사람은 더 이상 젊지 않습니다

설명 :로컬 변수와 글로벌 변수의 이름이 같은 경우 쌍 함수 본문에 있는 변수를 할당한 후에는 함수 본문 외부의 변수에는 영향을 주지 않습니다. 즉, 사람마다 자신의 공을 치고, 사람마다 자신의 북을 친다.

예를 들어 전역 변수 a를 함수 본문 외부에 정의하고 값 100을 할당하고, 지역 변수 a를 함수 본문 내부에 정의하고 값 10을 할당합니다. 코드는 다음과 같습니다.

a = 100  # 定义一个全局变量
def function():
    a = 10  # 定义局部变量
    print(a)  # 输出局部变量的值
function()  # 调用函数
print(a)  # 输出全局变量的值

The 실행 결과는 다음과 같습니다.

10100

(2)을 함수 본문에 정의하고 global 키워드로 수정하면 해당 변수가 전역 변수가 됩니다. 변수는 함수 본문 외부에서도 액세스할 수 있으며 함수 본문 내부에서 수정할 수도 있습니다.

예를 들어 함수 본문에 변수를 정의하고 전역 키워드를 사용하여 수정합니다. 코드는 다음과 같습니다.

poem = '天若有情天亦老,人间正道是沧桑'  # 全局变量
print('函数体外:poem =', poem)  # 在函数体外输出全局变量的值
def function():
    global poem  # 将poem声明为全局变量
    poem = '人生得意须尽欢,莫使金樽空对月'  # 全局变量
    print('函数体内:poem =', poem)  # 在函数体内输出全局变量的值
function()  # 调用函数
print('函数体外:poem =', poem)  # 在函数体外输出全局变量的值

위 코드를 실행하면 다음 내용이 표시됩니다.

함수 외부: poem = 하늘에 사랑이 있으면 하늘도 늙어가고 올바른 길은 세상은 인생의 우여곡절
함수 속: 시 = 인생이 행복하다면 모든 즐거움을 누려야지, 금잔을 달까지 비우지 마세요
함수 밖: 시 = 자랑스럽다면 인생, 당신은 모든 기쁨을 누려야합니다. 황금잔을 달까지 비우지 마십시오

위의 결과에서 알 수 있듯이 global 키워드로 수정된 전역 변수는 함수에서 사용할 수 있습니다. 본문 내의 전역 변수.

참고: 파이썬에서는 전역 변수와 지역 변수의 이름을 동일하게 허용하지만, 코드를 쉽게 혼동하고 전역 변수와 지역 변수를 구별하기 어렵게 만들 수 있으므로 실제 개발 중에는 권장하지 않습니다. .

위 내용은 Python에서 변수 범위를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제