자바스크립트의 지역변수와 전역변수

| | |

변수는 프로그래밍에서 중요하고 보편적인 개념입니다. 변수는 데이터를 저장하기 위한 컨테이너입니다. 변수는 사용자 이름, 이메일 주소 및 사용자의 온라인 게임 인벤토리 항목을 포함하여 다양한 유형의 데이터를 저장할 수 있습니다.

Python에서 프로그래밍할 때 전역 및 로컬의 두 가지 유형의 변수를 접하게 됩니다. 이 가이드에서는 이 두 가지 유형의 변수 간의 차이점, 작동 방식 및 코드에서 변수를 사용하는 방법에 대해 설명합니다.

Python 변수

Python에서 , 변수는 주로 데이터에 레이블을 지정하고 저장하는 데 사용됩니다. 변수를 정의할 때 이름을 지정합니다. 그런 다음 나중에 코드에서 이 이름을 사용하여 해당 이름이 나타내는 데이터를 검색할 수 있습니다. 변수는 문자열, 숫자, 목록 또는 기타 유형의 데이터를 저장할 수 있습니다.

게임을 만들고 사용자 이름을 저장하려고 한다고 가정해 보겠습니다. 프로그램에 이름을 입력하는 대신 변수를 사용하여 저장할 수 있습니다.

게임 사용자 이름을 저장하는 변수는 다음과 같습니다.

name이라는 변수를 선언했습니다. "Carlton Hernandez"로 설정합니다.

이 변수를 선언했으므로 코드에서 이를 조작할 수 있습니다. 예를 들어 사용자 이름을 변경하려면 다음 코드를 사용하면 됩니다.

코드의 첫 번째 줄에서 변수 name 에 "Carlton Hernandez" 값을 할당했습니다. 따라서 변수 name에 "Carlton Lewis Hernandez" 값을 할당했습니다. 변수에 새 값을 할당하면 프로그램이 가장 최근 값을 덮어쓰고 새 값으로 바꿉니다.

Python 전역 변수

파이썬에는 지역 변수와 전역 변수의 두 가지 주요 유형이 있습니다.

전역 변수는 함수 외부에서 선언된 변수입니다. 전역 변수에는 전역 범위가 있습니다. 이는 기능을 포함하여 프로그램 전체에서 액세스할 수 있음을 의미합니다. 이 개념의 다음 시각적 표현을 고려하십시오.

Python의 전역 및 지역 변수

XOm04"전역 변수 는 프로그램을 통해 액세스할 수 있습니다.

다음은 Python의 전역 변수 예입니다.

전역 변수를 선언하면 모든 암호. 예를 들어 다음 코드를 사용하여 전역 변수 name에 포함된 값을 인쇄하는 함수를 만들 수 있습니다.

코드 반환:

여기에서 호출된 함수를 초기화했습니다. < 코드>인쇄명(). 이 함수는 호출될 때 name 변수의 값을 콘솔에 출력합니다. 이것은 위에서 우리가 함수를 호출했을 때 일어난 일입니다.

Python 지역 변수

반면에 지역 변수는 함수 내부에 선언된 변수입니다. 이러한 변수에는 로컬 범위가 있는 것으로 알려져 있습니다. 즉, 선언된 함수에서만 액세스할 수 있습니다. 이전에 Python에서 변수의 개념을 설명하는 다음과 같은 시각적 표현을 다시 고려하십시오.

전역 및 지역 변수

로컬 변수 는 특정 함수에서만 액세스할 수 있습니다.

다음은 지역 변수를 사용하는 프로그램의 예입니다.

우리 코드는 다음을 반환합니다.

우리 코드에서 printName ()이라는 재미를 선언했습니다. 이 함수에서 name이라는 변수를 정의했습니다. 함수 내에서 이 변수를 선언했기 때문에 지역 변수입니다.

코드 끝에서 printName()을 사용하여 함수를 호출했습니다. 이에 대한 응답으로 프로그램은 printName() 함수를 실행했습니다.

이 예에서 name 변수는 printName에 대해 로컬입니다. (). 따라서 함수 외부에서 이 변수에 액세스할 수 없습니다. 다음은 이 지역 변수 name를 선언된 함수 외부에 인쇄하려고 할 때 발생하는 일입니다.

우리 코드는 다음을 반환합니다.

외부 지역 변수에 액세스할 수 없습니다. 우리가 그 변수를 할당한 함수의. 주 프로그램에서 지역 변수에 액세스하려고 하면 프로그램에서 오류가 발생합니다.

전역 및 지역 변수 사용

프로그램에서 동일한 이름의 변수를 사용할 수 있습니다. 지역 변수와 전역 변수 둘 다. 지역 변수는 지역 범위에서 읽고 전역 변수는 전역 범위에서 읽습니다.

다음은 다음을 포함하는 프로그램의 예입니다. 같은 이름의 지역 및 전역 변수:

코드 반환:

먼저 코드에 전역 변수 score를 할당했습니다. , 그 다음에 calculateScore() 에서 동일한 이름의 지역 변수를 생성했습니다.

calculateScore() 함수는 10과 같습니다. 따라서 calculateScore() 함수를 호출할 때 Final score: 10 메시지가 화면에 인쇄됩니다. console.

그러나 calculateScore()와는 별도로 score 변수의 값은 5입니다. 전역 범위에서 변수 score의 값을 5로 지정합니다. 따라서 Initial score:를 인쇄하고 변수 score 의 값이 뒤따를 때, 프로그램은 값 5를 표시합니다.

함수 내에서 전역 변수 할당

이전 섹션에서 전역 변수는 함수 외부에서(즉, 전역적으로) 정의된다는 것을 배웠습니다. 로컬 변수는 함수 내에서 정의됩니다(예: 로컬). 그러나 global 키워드를 사용하여 함수에서 변수를 정의한 다음(예: 로컬로) 프로그램에서 해당 함수를 실행하면(전역적으로) 해당 변수는 전역 변수가 됩니다.

다음 예를 고려하십시오.

우리 코드는 다음을 반환합니다.

우리 코드에서 변수 name의 값을 setName () 내부에 로컬로 할당했습니다. 함수. 하지만 이 변수를 정의하기 전에 global 키워드를 사용했기 때문에 name 변수에 전역 범위를 부여할 준비를 하고 있습니다. 그러나 name 변수는 프로그램에서 이 함수를 실행한 후에만 전역 변수가 됩니다.

프로그램이 setName() 함수를 실행한 후 print()를 실행할 때와 같이 프로그램에서 name 변수를 사용할 때마다 함수에서 name 변수는 이제 전역 변수 변수이기 때문에 프로그램은 로컬 함수에서 선언한 값을 사용합니다.

우리가 어떻게 이전에 함수 내에서 전역 변수를 수정하는 것이 직접 불가능하다고 말했습니다. 그건 사실이야. 그러나 global 키워드를 사용하여 함수에서 전역 변수를 간접적으로 수정할 수 있습니다.

다음은 함수에서 global 키워드를 사용하여 전역 값을 변경하는 예제 프로그램입니다. 변수:

우리 코드는 다음을 반환합니다:

이 코드를 분석해 보겠습니다. 먼저 name이라는 변수를 선언하고 "Bianca Peterson" 값을 할당했습니다. 전역변수입니다. 그래서 우리는 setName()이라는 함수를 선언했습니다. 호출되면 setName() 함수는 name 변수의 값을 수정합니다.

다음으로 setName() name 값을 "Bianca Lucinda Peterson`"으로 변경했습니다. 마지막으로 name 값을 콘솔에 출력했습니다. name 전역 변수는 이제 "Bianca Lucinda Peterson`"입니다.

일반적으로 전역 키워드는 드물게 사용해야 합니다. global 키워드를 너무 자주 사용하면 프로그램에서 변수의 범위를 이해하기 어려울 수 있습니다.

결론

글로벌 변수는 함수 외부에서 선언된 변수입니다. 지역 변수는 함수에서 선언된 변수입니다.

전역 변수는 함수에서 직접 변경할 수 없지만 전역 키워드를 사용하여 전역 변수의 값을 변경하는 함수를 만들 수 있습니다. 이 경우 전역 변수의 값은 이 함수를 실행할 때까지 변경되지 않습니다.

이 자습서에서는 예제를 참조하여 지역 및 전역 변수의 기본 사항과 작동 방식을 설명했습니다. .이제 전문 프로그래머처럼 Python 코드에서 지역 및 전역 변수를 사용할 준비가 되었습니다!

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers

News


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method