변수의 정의(뜻과 규칙)
프로그래밍에서 “변수”는 데이터를 저장하는 공간이라고 할 수 있습니다. 파이썬에서도 마찬가지로 변수는 숫자, 문자, 리스트 등 다양한 데이터를 저장할 수 있는 이름 붙은 상자입니다. 초보자들은 종종 변수라는 개념을 어렵게 느끼지만, 일상적인 예시를 떠올리면 쉽게 이해할 수 있습니다. 예를 들어, 수학에서 x = 3이라고 할 때 x는 변수이며, 그 안에 숫자 3이 저장되어 있는 것입니다. 파이썬에서도 다음과 같이 변수에 값을 저장할 수 있습니다:
x = 3
y = "안녕하세요"
z = [1, 2, 3, 4]
위 코드에서 x는 정수, y는 문자열, z는 리스트입니다. 변수에 값을 저장할 때는 = 기호를 사용하며, 이는 “할당”을 의미합니다. 수학에서의 등호(=)는 좌우가 같다는 의미이지만, 파이썬에서는 오른쪽 값을 왼쪽 변수에 저장하는 것입니다. 변수 이름은 마음대로 정할 수 있지만 몇 가지 규칙이 있습니다. 첫 글자는 숫자가 될 수 없으며, 공백이나 특수문자는 사용할 수 없습니다(밑줄 _은 예외). 예를 들어 다음은 유효한 변수입니다:
name = "Alice"
age = 25
user_score = 99.5
하지만 다음은 유효하지 않은 변수입니다:
2name = "Bob" # 숫자로 시작할 수 없음
user score = 70 # 공백이 포함될 수 없음
@age = 30 # 특수문자 사용 불가
변수를 이해하면 데이터를 다루는 데 훨씬 더 유연해지며, 프로그램의 핵심 구성 요소로서 중요한 역할을 하게 됩니다.
데이터 타입과 파이썬의 유연성
파이썬은 다양한 데이터 타입을 지원합니다. 대표적으로는 정수(int), 실수(float), 문자열(str), 리스트(list), 튜플(tuple), 딕셔너리(dict), 불(boolean) 등이 있습니다. 파이썬은 동적 타이핑 언어이기 때문에 변수에 값을 할당할 때 타입을 명시하지 않아도 자동으로 데이터 타입을 인식합니다. 예를 들어
x = 10 # 정수
pi = 3.14 # 실수
name = "John" # 문자열
is_active = True # 불
colors = ["red", "green", "blue"] # 리스트
이처럼 파이썬은 변수에 어떤 값이 들어갔는지에 따라 자동으로 타입을 설정합니다. 그렇기 때문에 초보자가 부담 없이 시작할 수 있다는 장점이 있습니다. 하지만 동시에 변수에 어떤 타입이 들어 있는지를 인지하고 사용하는 습관도 중요합니다.다음 예제를 보겠습니다:
a = 10
b = "5"
print(a + b) # 오류 발생
위 코드는 정수(int)와 문자열(str)을 더하려고 시도했기 때문에 오류가 발생합니다. 이럴 때는 타입을 일치시켜야 합니다.
print(a + int(b)) # 정수형으로 변환하여 15 출력
파이썬은 type() 함수를 이용해 변수의 데이터 타입을 확인할 수 있습니다.
x = 42
print(type(x)) # <class 'int'>
이처럼 다양한 데이터 타입을 유연하게 다루는 능력은 프로그래밍 실력을 키우는 데 필수적인 요소입니다.
변수와 입력, 출력의 실습 예제
변수의 개념을 이해했으면, 사용자로부터 입력을 받아 변수에 저장하고 이를 출력하는 간단한 프로그램을 만들어볼 수 있습니다. 사용자와 상호작용하는 프로그램을 작성하면 변수의 쓰임새를 보다 실감나게 이해할 수 있습니다.
다음은 이름과 나이를 입력받아 출력하는 예제입니다:
name = input("이름을 입력하세요: ")
age = input("나이를 입력하세요: ")
print("안녕하세요,", name, "님! 나이는", age, "살이군요.")
input() 함수는 사용자의 입력을 문자열로 받아들이며, 그 값을 변수에 저장할 수 있습니다. 이때 숫자 입력이 필요한 경우에는 int() 함수를 사용하여 자료형을 변환해 주어야 합니다.
age = int(input("나이를 입력하세요: "))
print("내년에는", age + 1, "살이 되겠네요!")
또한 복잡한 계산이나 조건문, 반복문과 함께 변수 사용을 연습하면 실력을 더욱 높일 수 있습니다. 예를 들어 사용자의 키와 몸무게를 입력받아 BMI를 계산하는 프로그램도 만들어볼 수 있습니다.
height = float(input("키(cm)를 입력하세요: ")) / 100
weight = float(input("몸무게(kg)를 입력하세요: "))
bmi = weight / (height ** 2)
print("당신의 BMI는", round(bmi, 2), "입니다.")
이처럼 변수는 프로그램의 모든 핵심 요소와 연결되어 있으며, 초보자가 반드시 잘 익혀야 할 기초 중의 기초입니다. 입력과 출력을 연습하면서 변수의 개념을 자연스럽게 체득해 나가면 다음 단계의 학습도 훨씬 수월해질 것입니다.