int, float, str, bool 4가지 기본 자료형과 변수 선언·타입 변환 완전 이해
이번 강에서 배울 것
- 변수(Variable)의 개념과 선언 방법
- 4가지 기본 자료형: int, float, str, bool
- type() 함수로 자료형 확인하기
- 자료형 변환(Type Casting) — int(), float(), str()
- 변수 이름 짓기 규칙과 관례(Snake Case)
1. 변수란 무엇인가
변수(Variable)는 데이터를 저장하는 이름 붙은 공간입니다. 수학에서 x = 5라고 쓰면 x에 5를 저장하는 것처럼, 파이썬에서도 변수에 값을 담아두고 필요할 때 꺼내 씁니다.
# 변수 선언 = 값을 변수에 저장
age = 25
name = "김민준"
height = 175.5
is_student = True
# 변수 사용
print(name) # → 김민준
print(age) # → 25
print(height) # → 175.5
# 변수 값 변경 (언제든 바꿀 수 있음)
age = 26
print(age) # → 26
# 여러 변수 동시 할당
x, y, z = 1, 2, 3
print(x, y, z) # → 1 2 3
# 같은 값을 여러 변수에 할당
a = b = c = 0
print(a, b, c) # → 0 0 0
2. 4가지 기본 자료형
| 자료형 | 영어 | 설명 | 예시 |
|---|---|---|---|
| 정수형 | int | 소수점 없는 숫자 | 1, -5, 100, 0 |
| 실수형 | float | 소수점 있는 숫자 | 3.14, -0.5, 1.0 |
| 문자열 | str | 텍스트 데이터 | "안녕", "Hello", "123" |
| 불리언 | bool | 참 또는 거짓 | True, False |
# 각 자료형 예시
score = 95 # int (정수)
temperature = 36.5 # float (실수)
city = "서울" # str (문자열)
is_pass = True # bool (불리언)
# type() 함수로 자료형 확인
print(type(score)) # →
print(type(temperature)) # →
print(type(city)) # →
print(type(is_pass)) # →
# 주의: "123"은 문자열, 123은 정수 — 다르다!
print(type("123")) # →
print(type(123)) # →
print("123" == 123) # → False (자료형이 다르므로)
3. 문자열(str) 자세히 알아보기
# 문자열 선언 방법 (작은따옴표 또는 큰따옴표 모두 가능)
greeting1 = "안녕하세요"
greeting2 = '반갑습니다'
# 따옴표 안에 따옴표가 필요할 때
sentence = "그는 '파이썬'을 배웁니다"
sentence2 = '그는 "파이썬"을 배웁니다'
# 여러 줄 문자열
poem = """
파이썬은 아름답고
파이썬은 명확하며
파이썬은 간결합니다
"""
# 문자열 연결 (+ 연산자)
first_name = "민준"
last_name = "김"
full_name = last_name + first_name
print(full_name) # → 김민준
# 문자열 반복 (* 연산자)
print("=" * 20) # → ====================
# 문자열 길이
print(len("안녕하세요")) # → 5
# 문자열 인덱싱 (0부터 시작)
word = "Python"
print(word[0]) # → P
print(word[5]) # → n
print(word[-1]) # → n (마지막 글자)
# 문자열 슬라이싱 [시작:끝:간격]
print(word[0:3]) # → Pyt
print(word[2:]) # → thon
print(word[:3]) # → Pyt
4. 자료형 변환(Type Casting)
# int() : 정수로 변환
print(int(3.7)) # → 3 (소수점 버림, 반올림 아님!)
print(int("42")) # → 42
print(int(True)) # → 1
print(int(False)) # → 0
# float() : 실수로 변환
print(float(5)) # → 5.0
print(float("3.14")) # → 3.14
# str() : 문자열로 변환
print(str(100)) # → "100"
print(str(3.14)) # → "3.14"
print(str(True)) # → "True"
# bool() : 불리언으로 변환
print(bool(0)) # → False (0은 거짓)
print(bool(1)) # → True (0이 아닌 수는 참)
print(bool("")) # → False (빈 문자열은 거짓)
print(bool("hi")) # → True (내용 있는 문자열은 참)
# 자주 하는 실수: input()은 항상 문자열 반환
age_input = input("나이를 입력하세요: ") # "25" 로 받아짐
age = int(age_input) # 숫자로 변환 후 사용
print(age + 1) # → 26
5. 변수 이름 짓기 규칙
【 필수 규칙 】
✅ 영문자, 숫자, 밑줄(_)만 사용 가능
✅ 숫자로 시작 불가
✅ 대소문자 구분 (name ≠ Name ≠ NAME)
❌ 파이썬 예약어(키워드) 사용 불가
(if, for, while, def, class, True, False, None 등)
좋은 변수명 예시:
✅ user_name (스네이크 케이스 — 파이썬 표준)
✅ total_score
✅ is_logged_in
❌ 1stname (숫자로 시작 불가)
❌ user-name (하이픈 불가 — 빼기 연산자로 해석됨)
❌ for (예약어)
파이썬 명명 관례 (PEP 8):
변수·함수: snake_case (소문자 + 밑줄)
클래스: PascalCase (각 단어 첫글자 대문자)
상수: UPPER_CASE (대문자 + 밑줄)
예: user_name, calculate_total(), UserProfile, MAX_SCORE
2강 핵심 요약
- 변수 = 데이터를 담는 이름 붙은 상자 (언제든 값 변경 가능)
- 4가지 기본 자료형: int(정수) · float(실수) · str(문자열) · bool(참/거짓)
- type()으로 자료형 확인, int()/float()/str()으로 변환
- int(3.7) = 3 — 반올림이 아닌 버림!
- input()은 항상 문자열 반환 → 숫자가 필요하면 int()로 변환
- 변수명은 snake_case 관례 사용 (PEP 8 표준)
- 다음 강: 연산자와 입력 — 계산하고 사용자와 소통하기
관련 검색어 · 파이썬변수, 파이썬자료형, int float str bool, 파이썬타입변환, type함수, 파이썬문자열, snake_case