웹사이트 검색

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_int103204934813의 값과 같게 설정하자마자 정수 대신 my_int를 사용할 수 있으므로 출력해 보겠습니다. :

print(my_int)
Output
103204934813

변수를 사용하면 빠르고 쉽게 수학을 할 수 있습니다. my_int=103204934813에서 정수 값 813을 뺍니다.

print(my_int - 813)
Output
103204934000

이 예에서 Python은 변수 my_int에서 813을 빼서 합계 103204934000을 반환하는 수학을 수행합니다.

수학에 대해 말하자면 변수는 수학 방정식의 결과와 동일하게 설정할 수 있습니다. 두 숫자를 함께 더하고 합계 값을 변수 x에 저장해 보겠습니다.

x = 76 + 145

위의 예는 이미 익숙한 대수학처럼 보일 수 있습니다. 대수학에서 문자 및 기타 기호는 변수가 데이터 유형의 값을 나타내는 기호 이름인 것처럼 수식 및 방정식 내에서 숫자와 수량을 나타내는 데 사용됩니다. 올바른 Python 구문을 사용하려면 변수가 방정식의 왼쪽에 있는지 확인해야 합니다.

계속해서 x를 출력해 보겠습니다.

print(x)
Output
221

변수 x76145의 합과 동일하게 설정되었기 때문에 파이썬은 값 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)
Output
76 Sammy

위의 예는 먼저 변수 x를 할당하고 정수 값으로 할당한 다음 변수 x를 재할당하여 이번에는 값으로 할당할 수 있음을 보여줍니다. 문자열.

프로그램을 다음과 같이 다시 작성하면:

x = 76
x = "Sammy"
print(x)

가장 최근에 할당된 두 번째 할당 값만 출력으로 받습니다.

Output
Sammy

변수 재할당은 경우에 따라 유용할 수 있지만 코드의 가독성을 알고 프로그램을 최대한 명확하게 만들기 위해 노력해야 합니다.

다중 할당

Python을 사용하면 하나의 값을 여러 변수에 동시에 할당할 수 있습니다. 이를 통해 한 번에 여러 변수를 초기화할 수 있으며 나중에 프로그램에서 직접 또는 사용자 입력을 통해 재할당할 수 있습니다.

다중 할당을 통해 변수 x, yz를 정수 0의 값으로 설정할 수 있습니다. :

x = y = z = 0
print(x)
print(y)
print(z)
Output
0 0 0

이 예에서 세 변수(x, yz)는 모두 동일한 메모리 위치에 할당됩니다. 그것들은 각각 0의 값과 같습니다.

Python을 사용하면 같은 줄 내의 여러 변수에 여러 값을 할당할 수도 있습니다. 이러한 각 값은 서로 다른 데이터 유형일 수 있습니다.

j, k, l = "shark", 2.05, 15
print(j)
print(k)
print(l)
Output
shark 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)
Output
local 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)
Output
local global global

이제 전역 변수 glb_var가 두 번 출력됩니다. 함수와 함수 외부에서 모두 출력되기 때문입니다.

함수 외부에서 지역 변수를 호출하려고 하면 어떻게 될까요?

glb_var = "global"

def var_function():
    lcl_var = "local"
    print(lcl_var)

print(lcl_var)
Output
NameError: 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)
Output
10 7 5

num1의 로컬 변수는 함수 내에서 로컬로 할당되기 때문에 해당 함수를 호출하면 num110의 로컬 값과 동일한 것으로 표시됩니다. . 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)
Output
Sammy

shark 변수는 new_shark() 함수 내에서 로컬로 할당되었지만 이전에 사용된 global 문으로 인해 함수 외부에서 액세스할 수 있습니다. 함수 내에서 변수 할당. global 문으로 인해 함수 외부에서 print(shark)를 호출해도 오류가 발생하지 않습니다. 함수 내에서 전역 변수를 할당 할 수 있지만 이렇게 자주 할 필요는 없으며 읽기 쉬운 코드 측면에서 오류를 범해야 합니다.

명심해야 할 다른 사항은 값을 할당하지 않고 함수 내에서 변수를 참조하는 경우 해당 변수는 암시적으로 전역 변수라는 것입니다. 지역 변수를 가지려면 함수 본문 내에서 값을 할당해야 합니다.

변수로 작업할 때 전역 또는 지역 변수를 사용하는 것이 더 적합한지 결정하는 것이 중요합니다. 일반적으로 변수를 로컬에 유지하는 것이 가장 좋지만 여러 함수에서 동일한 변수를 사용하는 경우 전역 변수를 초기화할 수 있습니다. 하나의 함수 또는 하나의 클래스 내에서만 변수로 작업하는 경우 대신 지역 변수를 사용하고 싶을 것입니다.

결론

이 튜토리얼은 Python 3 내에서 변수의 일반적인 사용 사례 중 일부를 살펴보았습니다. 변수는 프로그램에서 사용하는 데이터 유형의 값을 나타내는 기호 역할을 하는 프로그래밍의 중요한 빌딩 블록입니다.