본문 바로가기
Python

02. 변수와 자료형 - 데이터를 담는 그릇

by 샤나엘 2026. 2. 21.
반응형

변수와 자료형

02. 변수와 자료형 - 데이터를 담는 그릇

지난 시간에 파이썬을 설치하고 print()로 첫 출력을 해봤다. 오늘은 프로그래밍에서 가장 기본이 되는 개념, 변수자료형에 대해 공부한다.


변수란 무엇인가

프로그래밍에서 변수는 데이터를 담아두는 그릇이다.

일상에서 비유하면 이렇다. 냉장고에 음식을 넣고 이름표를 붙이는 것처럼, 변수는 데이터에 이름을 붙여서 저장해두는 것이다.

변수의 개념

 

name = "홍길동"
age = 25
height = 175.5

이 코드가 하는 일은 간단하다.

  • name이라는 그릇에 "홍길동"을 담았다
  • age라는 그릇에 25를 담았다
  • height라는 그릇에 175.5를 담았다

한번 저장해두면 언제든 꺼내 쓸 수 있다.

name = "홍길동"
age = 25

print(name)        # 홍길동
print(age)         # 25
print("이름:", name, "나이:", age)  # 이름: 홍길동 나이: 25

변수 이름 짓기 규칙

변수 이름을 아무렇게나 지을 수 있는 건 아니다. 몇 가지 규칙이 있다.

규칙 올바른 예 잘못된 예
영문, 숫자, 밑줄(_) 사용 가능 my_name, score1 my-name, score!1
숫자로 시작할 수 없음 player1, top3 1player, 3top
대소문자 구분 Name ≠ name ≠ NAME -
예약어 사용 불가 my_class, is_true class, if, for, True

💡 팁: 변수 이름은 의미가 드러나게 짓는 것이 좋다. a = 25보다 age = 25가 나중에 봤을 때 훨씬 이해하기 쉽다.


자료형 - 데이터의 종류

변수에 담을 수 있는 데이터에는 종류가 있다. 이것을 자료형(type)이라고 한다.

파이썬의 기본 자료형은 크게 네 가지다.

파이썬 기본 자료형 4가지

1. 정수 (int)

소수점이 없는 숫자. 우리가 일상에서 말하는 "숫자" 그 자체다.

age = 25
year = 2026
temperature = -3
count = 0

print(type(age))   # <class 'int'>

type() 함수를 사용하면 변수의 자료형을 확인할 수 있다.

2. 실수 (float)

소수점이 있는 숫자. 키, 몸무게, 온도 같은 것을 표현할 때 쓴다.

height = 175.5
pi = 3.14159
score = 98.6

print(type(height))   # <class 'float'>

주의할 점: 정수와 실수를 연산하면 결과는 항상 실수가 된다.

print(10 + 3.0)    # 13.0 (int + float = float)
print(10 / 3)      # 3.3333... (나눗셈은 항상 float)
print(10 // 3)     # 3 (몫만 구하면 int)

3. 문자열 (str)

글자, 단어, 문장 등 텍스트 데이터. 따옴표로 감싸서 만든다.

name = "홍길동"
greeting = '안녕하세요!'
address = "서울시 강남구"

print(type(name))   # <class 'str'>

작은따옴표(')와 큰따옴표(") 모두 사용 가능하다. 둘의 차이는 없다.

# 따옴표 안에 따옴표가 필요할 때
message1 = "그가 '안녕'이라고 말했다"
message2 = '그가 "안녕"이라고 말했다'

# 여러 줄 문자열
long_text = """이것은
여러 줄에 걸친
문자열입니다."""
print(long_text)

4. 불리언 (bool)

참(True) 또는 거짓(False), 딱 두 가지 값만 있다. 나중에 조건문에서 아주 많이 쓰게 된다.

is_student = True
is_adult = False

print(type(is_student))   # <class 'bool'>

# 비교 연산의 결과도 불리언이다
print(10 > 5)      # True
print(3 == 7)      # False
print("a" == "a")  # True

⚠️ 주의: TrueFalse는 첫 글자가 반드시 대문자여야 한다. true, false는 에러가 난다.


자료형 확인과 변환

type()으로 확인하기

자료형이 헷갈릴 때는 type()으로 확인하면 된다.

a = 10
b = 3.14
c = "Hello"
d = True

print(type(a))   # <class 'int'>
print(type(b))   # <class 'float'>
print(type(c))   # <class 'str'>
print(type(d))   # <class 'bool'>

자료형 변환하기

때로는 자료형을 바꿔야 할 때가 있다. 예를 들어 사용자에게 숫자를 입력받으면 문자열로 들어오는데, 이걸 계산하려면 숫자로 바꿔야 한다.

자료형 변환

# 문자열 → 정수
num_str = "100"
num = int(num_str)
print(num + 50)         # 150

# 문자열 → 실수
price_str = "29.99"
price = float(price_str)
print(price * 2)        # 59.98

# 숫자 → 문자열
age = 25
message = "나이: " + str(age) + "세"
print(message)          # 나이: 25세

# 정수 ↔ 실수
print(int(3.7))         # 3 (소수점 버림!)
print(float(10))        # 10.0

자주 하는 실수:

# 이러면 에러가 난다!
age = 25
print("나이: " + age)    # TypeError!

# 이렇게 해야 한다
print("나이: " + str(age))     # 방법 1: str() 변환
print("나이:", age)             # 방법 2: 쉼표 사용
print(f"나이: {age}")          # 방법 3: f-string (추천!)

변수 다루기 실전

변수 값 바꾸기

변수는 말 그대로 "변하는 수"다. 언제든 새 값을 넣을 수 있다.

score = 80
print(score)    # 80

score = 95      # 새 값으로 덮어쓰기
print(score)    # 95

score = score + 5   # 기존 값에 5 더하기
print(score)    # 100

여러 변수 한 번에 선언

파이썬에서는 한 줄에 여러 변수를 선언할 수 있다.

# 여러 변수에 각각 다른 값
x, y, z = 1, 2, 3
print(x, y, z)    # 1 2 3

# 여러 변수에 같은 값
a = b = c = 0
print(a, b, c)    # 0 0 0

# 두 변수의 값 교환 (파이썬만의 편리한 기능!)
x, y = 10, 20
x, y = y, x        # swap!
print(x, y)        # 20 10

다른 언어에서는 두 변수의 값을 교환하려면 임시 변수가 필요한데, 파이썬은 한 줄이면 된다. 이런 게 파이썬이 편한 이유다.


직접 해보기

문제 1. 자기 이름, 나이, 키를 변수에 저장하고, 각 변수의 값과 자료형을 출력해보자.

이름: 홍길동 (타입: <class 'str'>)
나이: 25 (타입: <class 'int'>)
키: 175.5 (타입: <class 'float'>)

문제 2. 아래 코드의 출력 결과를 예측해보자. (직접 실행해서 확인!)

a = "10"
b = "20"
print(a + b)

a = int("10")
b = int("20")
print(a + b)

문제 3. 원의 넓이를 계산하는 프로그램을 만들어보자.

  • 반지름을 변수에 저장하고
  • 원의 넓이 공식: 넓이 = 반지름 * 반지름 * 3.14159
  • 결과를 출력
정답 보기
# 문제 1
name = "홍길동"
age = 25
height = 175.5
print(f"이름: {name} (타입: {type(name)})")
print(f"나이: {age} (타입: {type(age)})")
print(f"키: {height} (타입: {type(height)})")
‍
# 문제 2
a = "10"
b = "20"
print(a + b)       # "1020" (문자열 연결!)
‍
a = int("10")
b = int("20")
print(a + b)       # 30 (숫자 덧셈)
‍
# 문제 3
radius = 5
area = radius * radius * 3.14159
print(f"반지름이 {radius}인 원의 넓이: {area}")

오늘의 정리

항목 내용
변수 데이터를 담아두는 그릇. =으로 값을 저장한다
int (정수) 소수점 없는 숫자: 1, -3, 100
float (실수) 소수점 있는 숫자: 3.14, -0.5, 98.6
str (문자열) 텍스트: "안녕", '파이썬'
bool (불리언) 참/거짓: True, False
type() 자료형 확인 함수
형 변환 int(), float(), str(), bool()

다음 편 예고: 연산자 총정리 - 계산하고 비교하고 판단하기

더하기 빼기만 있는 게 아니다. 비교 연산자, 논리 연산자까지, 파이썬의 모든 연산자를 한번에 정리해보자.


태그: 파이썬 Python 파이썬독학 변수 자료형 int float str bool type함수 형변환 파이썬기초 IT교육

반응형

댓글