파이썬의 기억력, 변수(Variable)와 데이터 타입 완전 정복
파이썬 비서에게 일을 시키려면 정보를 기억할 '포스트잇'이 필요합니다. 이 글 하나로 변수와 데이터 타입의 개념을 잡고, 실전 코드로 직접 확인해 보세요.
1. 변수란? — 이름표 붙인 박스
변수(Variable)는 데이터를 저장해 두는 이름 붙은 상자와 같습니다. 상자에 이름을 써 붙여두면 나중에 그 이름을 불렀을 때 상자 안의 내용물을 꺼내 쓸 수 있습니다.
파이썬 비서를 예로 들어볼까요. 비서에게 "고봉이라는 강아지의 나이는 5살이야"라고 알려줄 때, 비서는 머릿속 포스트잇에 그 정보를 적어 둡니다. 이 '포스트잇'이 바로 변수입니다.
변수는 프로그램이 실행되는 동안 컴퓨터의 메모리(RAM)에 값을 저장합니다. 프로그램이 종료되면 저장된 값은 사라집니다.
2. 변수에 값을 담는 법 — 할당 연산자 =
파이썬에서 변수에 값을 넣을 때는 = 기호를 사용합니다. 수학에서 '같다'는 뜻과 전혀 다릅니다. "오른쪽 값을 왼쪽 상자에 집어넣어라"는 명령입니다.
# 변수 선언 및 값 할당 name = "고봉이" # name이라는 상자에 "고봉이" 저장 age = 5 # age라는 상자에 숫자 5 저장 print(name) # 출력: 고봉이 print(age) # 출력: 5
=은 수학의 '등호'가 아닙니다. x = x + 1처럼 써도 오류가 나지 않으며, "x에 1을 더한 값을 다시 x에 저장하라"는 뜻입니다.
3. 데이터 타입 3총사 — String, Integer, Float
파이썬은 상자 안에 든 내용물이 무엇인지에 따라 다루는 방식이 달라집니다. 입문 단계에서 반드시 알아야 할 타입 3가지를 소개합니다.
| 타입 이름 | 파이썬 표기 | 내용물 | 예시 |
|---|---|---|---|
| 문자열 | str | 글자·텍스트 | "고봉이", 'Hello' |
| 정수 | int | 소수점 없는 숫자 | 10, -5, 0 |
| 부동소수점 | float | 소수점 있는 숫자 | 3.14, 0.5 |
🔤 문자열 (String, str)
글자나 텍스트를 저장할 때 사용합니다. 반드시 따옴표(" " 또는 ' ')로 감싸야 합니다.
greeting = "안녕하세요, 파이썬!" blog_name = 'IT 블로그' print(greeting) # 안녕하세요, 파이썬! print(blog_name) # IT 블로그 # 문자열끼리 + 로 이어 붙이기 (연결) print(greeting + " ") + blog_name) # 안녕하세요, 파이썬! IT 블로그
🔢 정수 (Integer, int)
소수점이 없는 정수입니다. 덧셈·뺄셈·곱셈·나눗셈 등 사칙연산이 모두 가능합니다.
score = 100 bonus = 20 print(score + bonus) # 120 print(score * 2) # 200
🔬 부동소수점 (Float)
소수점이 있는 숫자입니다. 키·몸무게·비율처럼 정밀한 수치를 다룰 때 사용합니다.
pi = 3.14 height = 172.5 print(pi * 2) # 6.28 print(height) # 172.5
4. 왜 타입을 구분해야 할까요?
파이썬은 똑똑하지만, 타입이 다른 값을 섞어서 쓰면 당황합니다. 가장 흔한 실수를 살펴보겠습니다.
CASE 01
숫자 + 숫자 = 계산
10 + 10은 정수 덧셈이므로 결과는 20입니다.
CASE 02
문자 + 문자 = 연결
"10" + "10"은 문자열 연결이므로 결과는 "1010"입니다.
CASE 03
문자 + 숫자 = 오류!
"나이: " + 25는 타입이 달라서 TypeError가 발생합니다.
# ✅ 올바른 방법: str()로 변환 후 연결 age = 25 print("나이: " + str(age)) # 나이: 25 # ✅ f-string으로 더 깔끔하게 (권장!) print(f"나이: {age}") # 나이: 25 # ❌ 이렇게 하면 TypeError 발생 # print("나이: " + age)
숫자를 문자열에 섞어 출력할 때는 f-string(f"...")을 사용하는 것이 가장 간편하고 현대적인 방법입니다.
5. 타입 확인하기 — type() 함수
변수의 타입이 무엇인지 확인하고 싶을 때는 내장 함수 type()을 사용합니다. 디버깅할 때 매우 유용합니다.
print(type("고봉이")) # <class 'str'> print(type(42)) # <class 'int'> print(type(3.14)) # <class 'float'> # 변수에 담아서 확인도 가능 name = "파이썬" print(type(name)) # <class 'str'>
42와 "42"는 완전히 다릅니다. 전자는 int(정수), 후자는 str(문자열)입니다. 따옴표 하나가 타입을 완전히 바꿉니다.
자주 묻는 질문 (FAQ)
Q 파이썬에서 변수 이름에 규칙이 있나요?
네, 변수 이름은 영문자·숫자·밑줄(_)만 사용할 수 있고 숫자로 시작하면 안 됩니다. 또한 if, for, while처럼 파이썬이 이미 사용 중인 예약어(keyword)는 변수 이름으로 쓸 수 없습니다. 한글 변수명도 기술적으로는 가능하지만, 협업과 유지보수를 위해 영문을 권장합니다.
Q 변수의 데이터 타입은 어떻게 확인하나요?
type() 함수를 사용하면 됩니다. 예를 들어 type(42)를 실행하면 <class 'int'>가 출력됩니다. 또는 isinstance(42, int)를 쓰면 True / False로 확인할 수도 있습니다.
Q 문자열 안에 따옴표를 넣으려면 어떻게 하나요?
큰따옴표(")로 감싼 문자열 안에는 작은따옴표(')를, 작은따옴표로 감싼 문자열 안에는 큰따옴표를 자유롭게 쓸 수 있습니다. 또는 백슬래시(\)로 이스케이프 처리할 수 있습니다. 예: "It's Python" 또는 'He said "Hello"'.
Q 파이썬에서 변수 타입을 바꿀 수 있나요?
네, 가능합니다. int(), float(), str() 함수를 사용해 타입을 변환(형변환, Type Casting)할 수 있습니다. 예를 들어 int("42")는 문자열 "42"를 정수 42로 바꿔줍니다.


댓글 쓰기