Python 3에서 변수를 사용하는 방법
소개
변수는 숙달해야 할 중요한 프로그래밍 개념입니다. 기본적으로 프로그램에서 사용하는 값을 나타내는 기호입니다.
이 자습서에서는 몇 가지 변수 기본 사항과 생성한 Python 3 프로그램 내에서 변수를 가장 잘 사용하는 방법을 다룹니다.
전제 조건
컴퓨터나 서버에 Python 3이 설치되어 있고 프로그래밍 환경이 설정되어 있어야 합니다. 프로그래밍 환경이 설정되지 않은 경우 운영 체제(Ubuntu, CentOS, Debian 등)에 적합한 서버의 프로그래밍 환경에 대한 설치 및 설정 가이드를 참조할 수 있습니다.
변수 이해
기술적인 측면에서 변수는 기호 이름이나 식별자에 연결된 값에 저장 위치를 할당하는 것입니다. 변수 이름은 컴퓨터 프로그램 내에서 저장된 값을 참조하는 데 사용됩니다.
변수는 값에 연결되는 이름이 있는 레이블로 생각할 수 있습니다.
정수 103204934813
가 있고 긴 숫자를 계속해서 다시 입력하는 대신 변수에 저장하려고 한다고 가정해 보겠습니다. 대신 변수 my_int
와 같이 기억하기 쉬운 것을 사용합시다.
정보: 이 자습서의 예제 코드를 따라하려면 python3
명령을 실행하여 로컬 시스템에서 Python 대화형 셸을 엽니다. 그런 다음 >>>
프롬프트 뒤에 추가하여 예제를 복사, 붙여넣기 또는 편집할 수 있습니다.
my_int = 103204934813
값에 연결된 레이블이라고 생각하면 다음과 같이 표시됩니다.
레이블에는 변수 이름 my_int
가 쓰여 있고 정수 값 103204934813
에 연결되어 있습니다.
my_int=103204934813
구문은 몇 가지 부분으로 구성된 대입문입니다.
- 변수 이름(
my_int
) - 등호(
=
)라고도 하는 할당 연산자 - 변수 이름에 연결되는 값(
103204934813
)
이 세 부분이 함께 변수 my_int
를 정수 103204934813
의 값과 동일하게 설정하는 명령문을 구성합니다.
변수를 값과 동일하게 설정하는 즉시 해당 변수를 초기화하거나 생성합니다. 이렇게 하면 값 대신 변수를 사용하도록 설정됩니다. Python에서 변수는 일부 프로그래밍 언어처럼 사용하기 전에 명시적으로 선언할 필요가 없습니다. 변수를 바로 사용할 수 있습니다.
my_int
를 103204934813
의 값과 같게 설정하자마자 정수 대신 my_int
를 사용할 수 있으므로 출력해 보겠습니다. :
print(my_int)
Output103204934813
변수를 사용하면 빠르고 쉽게 수학을 할 수 있습니다. my_int=103204934813
에서 정수 값 813을 뺍니다.
print(my_int - 813)
Output103204934000
이 예에서 Python은 변수 my_int
에서 813을 빼서 합계 103204934000
을 반환하는 수학을 수행합니다.
수학에 대해 말하자면 변수는 수학 방정식의 결과와 동일하게 설정할 수 있습니다. 두 숫자를 함께 더하고 합계 값을 변수 x
에 저장해 보겠습니다.
x = 76 + 145
위의 예는 이미 익숙한 대수학처럼 보일 수 있습니다. 대수학에서 문자 및 기타 기호는 변수가 데이터 유형의 값을 나타내는 기호 이름인 것처럼 수식 및 방정식 내에서 숫자와 수량을 나타내는 데 사용됩니다. 올바른 Python 구문을 사용하려면 변수가 방정식의 왼쪽에 있는지 확인해야 합니다.
계속해서 x
를 출력해 보겠습니다.
print(x)
Output221
변수 x
가 76
과 145
의 합과 동일하게 설정되었기 때문에 파이썬은 값 221
을 반환했습니다.
변수는 정수뿐만 아니라 모든 데이터 유형을 나타낼 수 있습니다.
my_string = 'Hello, World!'
my_flt = 45.06
my_bool = 5 > 9 #A Boolean value will return either True or False
my_list = ['item_1', 'item_2', 'item_3', 'item_4']
my_tuple = ('one', 'two', 'three')
my_dict = {'letter': 'g', 'number': 'seven', 'symbol': '&'}
위의 변수 중 하나를 인쇄하면 Python은 해당 변수가 무엇인지 반환합니다. 예를 들어 위의 목록 데이터 유형에 대한 대입문으로 작업해 보겠습니다.
my_list = ['item_1', 'item_2', 'item_3', 'item_4']
print(my_list)
Output['item_1', 'item_2', 'item_3', 'item_4']
[item_1, item_2, item_3, item_4]
의 목록 값을 변수 my_list
에 전달한 다음 print()
함수를 사용하여 my_list
를 호출하여 해당 값을 출력합니다.
변수는 해당 공간과 연결된 지정된 값을 허용하는 컴퓨터 내 메모리의 작은 영역을 조각하는 방식으로 작동합니다.
변수 명명: 규칙 및 스타일
변수 이름은 매우 유연하지만 염두에 두어야 할 몇 가지 규칙이 있습니다.
- 변수 이름은 한 단어여야 합니다(공백 없음)
- 변수 이름은 문자, 숫자 및 밑줄(
_
)로만 구성되어야 합니다. - 변수 이름은 숫자로 시작할 수 없습니다
위의 규칙에 따라 유효한 변수 이름과 유효하지 않은 변수 이름을 모두 검토해 보겠습니다.
Valid | Invalid | Why Invalid |
---|---|---|
my_int | my-int | Hyphens are not permitted |
int4 | 4int | Cannot begin with a number |
MY_INT | $MY_INT | Cannot use symbols other than _ |
another_int | another int | Cannot be more than one word |
변수 이름을 지정할 때 염두에 두어야 할 또 다른 사항은 변수가 대소문자를 구분한다는 것입니다. >mY_iNt는 모두 완전히 다른 변수입니다. 프로그램 내에서 유사한 변수 이름을 사용하지 않도록 하여 귀하와 귀하의 현재 및 미래 공동 작업자가 변수를 똑바로 유지할 수 있도록 해야 합니다.
마지막으로 스타일에 대한 몇 가지 참고 사항입니다. 일반적으로 변수 이름을 지정할 때 소문자로 시작하고 단어를 구분할 때 밑줄을 사용하는 것이 일반적입니다. 대문자로 시작하는 것은 유효하지 않으며 일부 사람들은 변수를 작성할 때 카멜케이스 또는 대문자와 소문자를 혼합하는 것을 선호할 수 있지만 이는 덜 일반적인 선택입니다.
Conventional Style | Unconventional Style | Why Unconventional |
---|---|---|
my_int | myInt | camelCase not conventional |
int4 | Int4 | Upper-case first letter not conventional |
my_first_string | myFirstString | camelCase not conventional |
선택할 수 있는 가장 중요한 스타일 선택은 일관성을 유지하는 것입니다. 변수 이름에 camelCase를 사용하는 기존 프로젝트에서 작업을 시작하는 경우 기존 스타일을 계속 사용하는 것이 가장 좋습니다.
PEP 8은 공식 Python 코드 스타일 가이드이며 Python에 대해 가질 수 있는 많은 문체 질문을 해결합니다. 일반적으로 가독성과 일관성이 다른 문체 문제보다 선호됩니다.
변수 재할당
변수라는 단어에서 알 수 있듯이 Python 변수는 쉽게 변경할 수 있습니다. 이는 재할당을 통해 매우 쉽게 이전에 할당된 변수와 다른 값을 연결할 수 있음을 의미합니다.
재할당이 가능하다는 점은 프로그램이 진행되는 동안 사용자가 생성한 값을 이미 초기화된 변수에 수용해야 하거나 이전에 정의한 것으로 할당을 변경해야 할 수 있기 때문에 유용합니다.
변수를 쉽게 재할당할 수 있다는 사실을 아는 것은 다른 사람이 시작한 대규모 프로그램에서 작업 중이고 이미 정의된 내용이 아직 명확하지 않은 상황에서도 유용할 수 있습니다.
먼저 x
를 정수로 할당한 다음 문자열로 다시 할당해 보겠습니다.
#Assign x to be an integer
x = 76
print(x)
#Reassign x to be a string
x = "Sammy"
print(x)
Output76
Sammy
위의 예는 먼저 변수 x
를 할당하고 정수 값으로 할당한 다음 변수 x
를 재할당하여 이번에는 값으로 할당할 수 있음을 보여줍니다. 문자열.
프로그램을 다음과 같이 다시 작성하면:
x = 76
x = "Sammy"
print(x)
가장 최근에 할당된 두 번째 할당 값만 출력으로 받습니다.
OutputSammy
변수 재할당은 경우에 따라 유용할 수 있지만 코드의 가독성을 알고 프로그램을 최대한 명확하게 만들기 위해 노력해야 합니다.
다중 할당
Python을 사용하면 하나의 값을 여러 변수에 동시에 할당할 수 있습니다. 이를 통해 한 번에 여러 변수를 초기화할 수 있으며 나중에 프로그램에서 직접 또는 사용자 입력을 통해 재할당할 수 있습니다.
다중 할당을 통해 변수 x
, y
및 z
를 정수 0
의 값으로 설정할 수 있습니다. :
x = y = z = 0
print(x)
print(y)
print(z)
Output0
0
0
이 예에서 세 변수(x
, y
및 z
)는 모두 동일한 메모리 위치에 할당됩니다. 그것들은 각각 0의 값과 같습니다.
Python을 사용하면 같은 줄 내의 여러 변수에 여러 값을 할당할 수도 있습니다. 이러한 각 값은 서로 다른 데이터 유형일 수 있습니다.
j, k, l = "shark", 2.05, 15
print(j)
print(k)
print(l)
Outputshark
2.05
15
위의 예에서 변수 j
는 문자열 \shark\
에 할당되었고 변수 k
는 float 2.05에 할당되었습니다.
, 변수 l
은 정수 15
에 할당되었습니다.
한 줄에서 여러 변수에 여러 값을 할당하는 이 접근 방식은 코드 줄을 줄일 수 있지만 더 적은 수의 코드 줄에 대한 가독성을 손상시키지 않도록 합니다.
글로벌 및 로컬 변수
프로그램 내에서 변수를 사용할 때 변수 범위를 염두에 두는 것이 중요합니다. 변수의 범위는 주어진 프로그램의 코드 내에서 액세스할 수 있는 특정 위치를 나타냅니다. 즉, 주어진 프로그램의 모든 부분에서 모든 변수에 액세스할 수 있는 것은 아닙니다. 일부 변수는 전역 변수이고 일부 변수는 지역 변수입니다.
전역 변수는 함수 외부에 존재합니다. 지역 변수는 함수 내에 존재합니다.
작동 중인 전역 변수와 지역 변수를 살펴보겠습니다.
#Create a global variable, outside of a function
glb_var = "global"
#Define a function
def var_function():
lcl_var = "local" #Create a local variable, inside function
print(lcl_var)
#Call function to print local variable
var_function()
#Print global variable outside function
print(glb_var)
Outputlocal
global
위의 프로그램은 함수 외부에 전역 변수 glb_var
를 할당한 다음 var_function()
함수를 정의합니다. 함수 내에서 lcl_var
라는 로컬 변수가 할당된 다음 출력됩니다. 프로그램은 var_function()
을 호출한 다음 glb_var
를 인쇄하여 끝납니다.
glb_var
는 전역 변수이므로 var_function()
에서 참조할 수 있습니다. 이를 위해 위의 작은 프로그램을 수정해 보겠습니다.
glb_var = "global"
def var_function():
lcl_var = "local"
print(lcl_var)
print(glb_var) #Print glb_var within function
var_function()
print(glb_var)
Outputlocal
global
global
이제 전역 변수 glb_var
가 두 번 출력됩니다. 함수와 함수 외부에서 모두 출력되기 때문입니다.
함수 외부에서 지역 변수를 호출하려고 하면 어떻게 될까요?
glb_var = "global"
def var_function():
lcl_var = "local"
print(lcl_var)
print(lcl_var)
OutputNameError: name 'lcl_var' is not defined
할당된 함수 외부에서 지역 변수를 사용할 수 없습니다. 그렇게 하려고 하면 NameError
가 반환됩니다.
전역 변수와 지역 변수에 동일한 변수 이름을 사용하는 또 다른 예를 살펴보겠습니다.
num1 = 5 #Global variable
def my_function():
num1 = 10 #Use the same variable name num1
num2 = 7 #Assign local variable
print(num1) #Print local variable num1
print(num2) #Print local variable num2
#Call my_function()
my_function()
#Print global variable num1
print(num1)
Output10
7
5
num1
의 로컬 변수는 함수 내에서 로컬로 할당되기 때문에 해당 함수를 호출하면 num1
이 10
의 로컬 값과 동일한 것으로 표시됩니다. . my_function()
을 호출한 후 num1
의 전역 값을 인쇄하면 전역 변수 num1
이 여전히 <코드>5.
Python의 global
문을 사용하여 함수 내에서 전역 변수를 할당할 수 있습니다.
def new_shark():
#Assign variable as global
global shark
shark = "Sammy"
#Call new_shark() function
new_shark()
#Print global variable shark
print(shark)
OutputSammy
shark
변수는 new_shark()
함수 내에서 로컬로 할당되었지만 이전에 사용된 global
문으로 인해 함수 외부에서 액세스할 수 있습니다. 함수 내에서 변수 할당. global
문으로 인해 함수 외부에서 print(shark)
를 호출해도 오류가 발생하지 않습니다. 함수 내에서 전역 변수를 할당 할 수 있지만 이렇게 자주 할 필요는 없으며 읽기 쉬운 코드 측면에서 오류를 범해야 합니다.
명심해야 할 다른 사항은 값을 할당하지 않고 함수 내에서 변수를 참조하는 경우 해당 변수는 암시적으로 전역 변수라는 것입니다. 지역 변수를 가지려면 함수 본문 내에서 값을 할당해야 합니다.
변수로 작업할 때 전역 또는 지역 변수를 사용하는 것이 더 적합한지 결정하는 것이 중요합니다. 일반적으로 변수를 로컬에 유지하는 것이 가장 좋지만 여러 함수에서 동일한 변수를 사용하는 경우 전역 변수를 초기화할 수 있습니다. 하나의 함수 또는 하나의 클래스 내에서만 변수로 작업하는 경우 대신 지역 변수를 사용하고 싶을 것입니다.
결론
이 튜토리얼은 Python 3 내에서 변수의 일반적인 사용 사례 중 일부를 살펴보았습니다. 변수는 프로그램에서 사용하는 데이터 유형의 값을 나타내는 기호 역할을 하는 프로그래밍의 중요한 빌딩 블록입니다.