티스토리 뷰
목차
Python은 배우기 쉬운 프로그래밍 언어로, **변수(variable)**는 프로그래밍에서 가장 기본적이고 중요한 개념 중 하나입니다. 이번 글에서는 Python에서 변수가 무엇인지, 어떻게 사용하는지, 그리고 변수와 관련된 중요한 개념들을 초보자도 쉽게 이해할 수 있도록 설명해드리겠습니다.
1. 변수란 무엇인가?
변수는 컴퓨터 프로그래밍에서 값을 저장하는 이름입니다. 즉, 변수를 사용하면 특정 데이터를 저장해 놓고 그 이름으로 값을 나중에 참조하거나 수정할 수 있습니다. 변수는 메모리의 특정 위치에 값을 저장하고, 프로그래머가 이름을 통해 그 값을 쉽게 관리할 수 있게 해줍니다.
예를 들어, 수학에서 x = 10이라고 하면, Python에서도 다음과 같이 변수를 정의할 수 있습니다.
x = 10 # x는 10이라는 값을 가진 변수
이 코드는 x라는 변수에 숫자 10을 저장한다는 의미입니다. 변수는 여러 번 값을 변경하거나 사용할 수 있으며, 다양한 자료형의 데이터를 저장할 수 있습니다.
2. Python에서 변수 사용하기
Python에서는 변수를 선언할 때 따로 **자료형(data type)**을 명시할 필요가 없습니다. Python은 변수에 값을 할당하는 순간, 그 값을 기준으로 자동으로 자료형을 결정해 줍니다.
예시:
name = "Alice" # 문자열 (str)
age = 25 # 정수 (int)
height = 5.8 # 실수 (float)
위 코드에서, name 변수는 문자열 데이터, age는 정수 데이터, height는 실수 데이터를 저장합니다. Python은 이러한 값을 할당받은 순간, 각 변수의 자료형을 자동으로 인식하게 됩니다.
변수 출력하기:
print(name) # 출력: Alice
print(age) # 출력: 25
print(height) # 출력: 5.8
위 예시에서는 각 변수에 할당된 값이 콘솔에 출력됩니다. Python은 매우 직관적인 방식으로 변수를 선언하고 사용할 수 있어서 초보자도 쉽게 다룰 수 있습니다.
3. 변수 작명 규칙
Python에서는 변수를 정의할 때 일정한 작명 규칙을 따라야 합니다. 이러한 규칙을 지키지 않으면 코드가 정상적으로 작동하지 않거나 오류가 발생할 수 있습니다.
- 변수 이름은 알파벳, 숫자, 밑줄(_)로 구성됩니다.
- 변수 이름은 숫자로 시작할 수 없습니다.
예: my_var1 (가능) vs. 1var (불가능) - 변수 이름은 공백을 포함할 수 없습니다.
예: my_var (가능) vs. my var (불가능) - 대소문자 구분: 변수 이름에서 대소문자는 서로 다른 변수로 인식됩니다.
예: age와 Age는 다른 변수입니다. - Python의 예약어는 변수 이름으로 사용할 수 없습니다.
예약어 예: if, for, while, class, def 등.
예시:
# 올바른 변수 이름
name = "Bob"
my_var = 10
_age = 30
# 잘못된 변수 이름 (숫자로 시작)
# 1var = 100 # SyntaxError 발생
4. 변수 재할당 및 여러 변수 한 번에 할당하기
Python에서는 이미 선언된 변수에 새로운 값을 재할당할 수 있습니다. 변수에 새로운 값을 할당하면, 이전 값은 사라지고 새 값이 저장됩니다.
예시:
x = 5
print(x) # 출력: 5
x = 10
print(x) # 출력: 10
위 코드에서 x에 처음엔 5가 할당되었지만, 나중에 10으로 재할당되었습니다. Python에서는 한 번에 여러 변수에 값을 할당하는 것도 가능합니다.
a, b, c = 1, 2, 3
print(a) # 출력: 1
print(b) # 출력: 2
print(c) # 출력: 3
또는 동일한 값을 여러 변수에 할당할 수도 있습니다.
x = y = z = 100
print(x) # 출력: 100
print(y) # 출력: 100
print(z) # 출력: 100
5. Python의 변수 자료형과 연산
Python의 변수는 다양한 자료형을 가질 수 있습니다. 대표적인 자료형으로는 정수(int), 실수(float), 문자열(str), 부울(bool) 등이 있습니다.
자료형 예시:
x = 10 # 정수 (int)
y = 3.14 # 실수 (float)
name = "John" # 문자열 (str)
is_active = True # 부울 (bool)
자료형 확인하기:
print(type(x)) # <class 'int'>
print(type(y)) # <class 'float'>
print(type(name)) # <class 'str'>
print(type(is_active)) # <class 'bool'>
변수는 수학적 연산에도 사용할 수 있으며, 문자열과 같은 비숫자 데이터에 대해서도 연산을 할 수 있습니다.
수학적 연산 예시:
a = 10
b = 5
result = a + b # 10 + 5 = 15
print(result) # 15 출력
문자열 연산 예시:
first_name = "John"
last_name = "Doe"
full_name = first_name + " " + last_name
print(full_name) # "John Doe" 출력
6. 상수와 변수의 스코프(Scope)
Python에서 **상수(constant)**는 별도의 키워드 없이, 대문자 변수로 상수를 표현하는 것이 일반적입니다. 상수는 한 번 정의되면 값이 변경되지 않도록 설정하는 개념입니다.
예시:
PI = 3.14159 # 상수로 취급
GRAVITY = 9.8
또한, 변수의 **스코프(Scope)**는 변수가 사용될 수 있는 범위를 의미합니다. 전역 변수와 지역 변수로 나뉘며, 전역 변수는 프로그램 전체에서 사용될 수 있는 반면, 지역 변수는 함수 내부에서만 유효합니다.
변수 스코프 예시:
x = 10 # 전역 변수
def my_function():
y = 5 # 지역 변수
print(y)
my_function() # 5 출력
print(x) # 10 출력
# print(y) # 오류 발생, y는 함수 내부에서만 사용 가능
결론
Python의 변수는 프로그래밍의 기본적인 개념으로, 초보자도 쉽게 이해할 수 있는 간단한 문법으로 설계되었습니다. 변수는 데이터를 저장하고 재사용하는 데 필수적이며, 자료형, 스코프, 상수 등 다양한 개념을 익히면 Python 프로그래밍의 기초를 탄탄히 다질 수 있습니다.
이 글에서 Python 변수의 사용법과 관련된 여러 핵심 개념을 다루었으며, 이를 토대로 다양한 실습을 통해 더 깊이 있는 학습을 할 수 있습니다. Python에서 변수를 자유자재로 활용할 수 있다면 프로그래밍의 기초를 다지는 중요한 한 걸음을 내딛는 것입니다.