파이썬 자료형 정리: 숫자, 문자열, 불리언 쉽게 이해하기 (python data type)
지난 글에서 변수를 배우면서 age = 25, name = "민수" 이런 코드를 썼잖아요. 근데 잠깐 생각해보면, 25는 숫자고 "민수"는 글자예요. 이 둘은 생긴 것도 다르고, 할 수 있는 것도 달라요.
이렇게 값의 종류를 자료형이라고 불러요.
파이썬에서 가장 기본이 되는 자료형은 딱 세 가지예요. 숫자, 문자열, 불리언. 하나씩 보면 어렵지 않으니까 천천히 따라와 보세요.
파이썬 숫자형: 계산할 수 있는 값 (int, float)
숫자형은 말 그대로 숫자예요. 두 종류가 있거든요.
score = 100 # 정수(int) - 소수점 없는 숫자
weight = 67.5 # 실수(float) - 소수점 있는 숫자
여기서 한 가지 주의할 점이 있어요. 10이랑 10.0은 달라요. 소수점 하나 차이인데 파이썬은 이걸 다른 종류로 봐요.
숫자끼리는 계산이 돼요.
print(3 + 2) # 5 (더하기)
print(10 - 4) # 6 (빼기)
print(5 * 3) # 15 (곱하기)
print(7 / 2) # 3.5 (나누기)
나누기(/)는 좀 독특한데, 정수끼리 나눠도 결과가 항상 소수점이 붙어요. 6 / 2를 하면 3이 아니라 3.0이 나와요. 처음에 이거 보고 "왜 .0이 붙지?" 하고 헷갈리셨다면 정상이에요.
python 문자열: 따옴표로 감싼 모든 것 (str)
문자열은 따옴표로 감싼 텍스트예요. 작은따옴표든 큰따옴표든 상관없어요.
name = "민수" # 큰따옴표 OK
greeting = '안녕하세요' # 작은따옴표도 OK
문자열끼리는 +로 이어붙일 수 있어요.
print("파이" + "썬") # 파이썬
print("하" * 3) # 하하하
*로 반복도 돼요. "하"를 3번 반복하면 "하하하"가 되는 거죠.
숫자 10과 문자열 "10"은 완전 다르다
이게 진짜 중요해요.
print(10 + 5) # 15 (숫자끼리 더하기 = 계산)
print("10" + "5") # 105 (문자열끼리 더하기 = 이어붙이기)
겉보기에는 둘 다 10이지만, 따옴표가 있느냐 없느냐로 완전히 다른 결과가 나와요. 숫자 10은 계산이 되고, 문자열 "10"은 그냥 글자 1과 0이 나란히 붙어 있는 거예요.
전화번호를 생각해보세요. 010-1234-5678은 숫자처럼 생겼지만 계산하는 용도가 아니잖아요. 이런 건 문자열로 저장하는 게 맞아요.
불리언: True 아니면 False (bool)
불리언은 참(True) 또는 거짓(False), 딱 두 가지만 있어요.
is_student = True # 학생인가요? 네
is_adult = False # 성인인가요? 아니요
비교할 때 자동으로 불리언이 나와요.
print(5 > 3) # True (5가 3보다 크니까 참)
print(10 == 7) # False (10이랑 7은 같지 않으니까 거짓)
print(3 != 3) # False (3이랑 3은 같으니까, "같지 않다"는 거짓)
여기서 주의할 게 하나 있어요. True, False는 첫 글자가 반드시 대문자여야 해요. 소문자로 true라고 쓰면 에러가 나요. 처음에 이거 때문에 에러 나시는 분들이 꽤 있더라고요.
type()으로 자료형 확인하기
헷갈리면 type() 함수로 확인해볼 수 있어요.
print(type(10)) # <class 'int'> 정수
print(type(3.14)) # <class 'float'> 실수
print(type("안녕")) # <class 'str'> 문자열
print(type(True)) # <class 'bool'> 불리언
int는 정수, float는 실수, str는 문자열, bool은 불리언이에요. 지금 당장 다 외울 필요는 없고, "이런 게 있구나" 정도면 충분해요.
자료형 바꾸기: 형변환
가끔 자료형을 바꿔야 할 때가 있어요. 예를 들어, 문자열 "25"를 숫자 25로 바꾸고 싶다면요.
num = int("25") # 문자열 "25"를 정수 25로 변환
print(num + 5) # 30
price = str(3000) # 숫자 3000을 문자열 "3000"으로 변환
print("가격: " + price + "원") # 가격: 3000원
rate = float("3.14") # 문자열 "3.14"를 실수 3.14로 변환
print(rate + 1) # 4.14
int()는 정수로, str()은 문자열로, float()는 실수로 바꿔주는 함수예요.
문자열이랑 숫자를 +로 합치면 에러가 나거든요.
print("나이: " + 25)
# TypeError: can only concatenate str (not "int") to str
이럴 때 str(25)로 숫자를 문자열로 바꿔주면 해결돼요. 형변환은 다음 글에서도 정말 많이 쓰이니까 기억해두세요.
직접 해보기
아래 코드를 실행해보고, type()으로 각 변수의 자료형을 확인해보세요.
# 변수 만들기
my_name = "홍길동"
my_age = 25
my_height = 175.5
is_beginner = True
# 자료형 확인하기
print(type(my_name)) # 뭐가 나올까요?
print(type(my_age)) # 뭐가 나올까요?
print(type(my_height)) # 뭐가 나올까요?
print(type(is_beginner)) # 뭐가 나올까요?
# 도전: 나이에 1을 더해서 "내년 나이"를 출력해보세요
next_age = my_age + 1
print(my_name + "님의 내년 나이: " + str(next_age) + "살")
str(next_age) 부분을 빼고 실행하면 어떤 에러가 나는지도 한번 확인해보세요. 직접 에러를 만나봐야 나중에 안 당황해요.
자료형, 이제 감이 좀 오시죠? 근데 실제로 프로그램을 만들려면 사용자한테 뭔가를 입력받아야 하잖아요. 그때 쓰는 게 input() 함수인데, 재밌는 게 있어요. input()으로 받은 값은 숫자를 입력해도 무조건 문자열이에요. 오늘 배운 형변환이 바로 거기서 써먹게 돼요.
제 글이 도움이 되셨다면 댓글 & 공감 부탁드려요 😀
'Application > Python' 카테고리의 다른 글
| [Python] 파이썬 조건문: if, elif, else 쉽게 이해하기 (0) | 2026.04.18 |
|---|---|
| [Python] 파이썬 input 함수, 사용자 입력 받는 법 완벽 정리 (0) | 2026.04.17 |
| [Python] 파이썬 변수란? 데이터를 담아두는 가장 기본적인 방법 (python variable) (0) | 2026.04.15 |
| [Python] 파이썬 print 사용법과 주석 - python 첫 코드 작성하기 (0) | 2026.04.13 |
| [Python] 파이썬 설치 방법 - 윈도우 환경설정 완전 가이드 (2) | 2026.04.11 |