반응형
🐍 파이썬의 내장형 클래스 쉽게 이해하기
Python에서 기본적으로 제공되는 데이터 타입(클래스)을 내장형 클래스(Built-in Types)라고 합니다.
우리가 프로그램을 만들 때 가장 기본이 되는 데이터(숫자, 문자열, 리스트 등)를 저장하는 **그릇(타입)**이라고 생각하면 됩니다.
🔹 1. 숫자형 (Numeric Types)
숫자를 저장하는 타입
✔️ 계산이 가능하며, 정수/실수/복소수 등으로 구분됨
타입 설명 예시
int | 정수형 숫자 | x = 10 |
float | 실수형 숫자 | y = 3.14 |
complex | 복소수 (허수 포함) | z = 2 + 3j |
📌 예제 코드
a = 5 # 정수(int)
b = 2.5 # 실수(float)
c = 3 + 4j # 복소수(complex)
print(type(a), type(b), type(c))
# <class 'int'> <class 'float'> <class 'complex'>
🔹 2. 시퀀스형 (Sequence Types)
순서가 있는 데이터 구조
✔️ 여러 개의 값을 저장하고, 순서를 유지하는 타입
타입 설명 예시
str | 문자열 (텍스트) | s = "Hello" |
list | 리스트 (가변, 수정 가능) | lst = [1, 2, 3] |
tuple | 튜플 (불변, 수정 불가) | tup = (1, 2, 3) |
range | 범위 지정 (반복문용) | r = range(5) |
📌 예제 코드
text = "Python" # 문자열
numbers = [1, 2, 3] # 리스트
fixed = (4, 5, 6) # 튜플
r = range(5) # 0부터 4까지 생성
print(type(text), type(numbers), type(fixed), type(r))
# <class 'str'> <class 'list'> <class 'tuple'> <class 'range'>
🔹 3. 매핑형 (Mapping Type)
✔️ 키(Key)와 값(Value) 형태로 저장하는 타입
✔️ 데이터를 빠르게 찾을 때 사용
타입 설명 예시
dict | 딕셔너리 (키-값 구조) | d = {"name": "Alice", "age": 25} |
📌 예제 코드
person = {"name": "Alice", "age": 25}
print(person["name"]) # Alice
print(type(person)) # <class 'dict'>
🔹 4. 집합형 (Set Types)
✔️ 중복을 허용하지 않는 데이터 구조
✔️ 순서가 없으며, 데이터의 유일성을 보장
타입 설명 예시
set | 집합 (중복X) | s = {1, 2, 3} |
frozenset | 불변 집합 (수정 불가) | fs = frozenset({4, 5, 6}) |
📌 예제 코드
numbers = {1, 2, 3, 3, 4} # 중복된 3은 자동 제거됨
print(numbers) # {1, 2, 3, 4}
fs = frozenset([10, 20, 30])
# fs.add(40) # 오류 발생 (frozenset은 수정 불가)
🔹 5. 부울형 (Boolean Type)
✔️ 참(True) 또는 거짓(False)를 나타내는 타입
✔️ 조건문에서 자주 사용됨
타입 설명 예시
bool | 참/거짓 값 | b = True, b = False |
📌 예제 코드
is_active = True
is_logged_in = False
print(type(is_active)) # <class 'bool'>
🔹 6. 이진형 (Binary Types)
✔️ 컴퓨터가 직접 다루는 바이너리 데이터 타입
타입 설명 예시
bytes | 불변 바이트 시퀀스 | b = b"hello" |
bytearray | 가변 바이트 배열 | ba = bytearray(5) |
memoryview | 메모리 뷰 객체 | mv = memoryview(b'abc') |
📌 예제 코드
b = b"hello" # bytes
ba = bytearray(5) # bytearray
mv = memoryview(b"hello") # memoryview
print(type(b), type(ba), type(mv))
# <class 'bytes'> <class 'bytearray'> <class 'memoryview'>
🔹 7. None 타입
✔️ "값이 없다(None)"를 나타내는 타입
✔️ 보통 변수가 아직 값을 가지지 않았을 때 사용됨
타입 설명 예시
NoneType | 값이 없음을 의미 | x = None |
📌 예제 코드
x = None
print(type(x)) # <class 'NoneType'>
🚀 한눈에 보는 정리
분류 클래스명 설명
숫자형 | int, float, complex | 정수, 실수, 복소수 |
시퀀스형 | str, list, tuple, range | 문자열, 리스트, 튜플, 범위 |
매핑형 | dict | 키-값 저장 (딕셔너리) |
집합형 | set, frozenset | 중복 없는 집합 |
부울형 | bool | 참/거짓 |
이진형 | bytes, bytearray, memoryview | 바이너리 데이터 |
None 타입 | NoneType | 값 없음 |
🎯 결론
- Python은 다양한 내장형 데이터 타입을 제공하며, 각각의 역할이 다릅니다.
- 가장 많이 쓰이는 타입: int, float, str, list, dict, bool
- type() 함수를 사용하면 데이터가 어떤 클래스인지 확인할 수 있습니다.
'십대를 위한 코딩 > 십대를 위한 파이썬' 카테고리의 다른 글
딕셔너리의 .items() 메서드는 어떻게 생겼을까? (1) | 2025.02.17 |
---|---|
객체 모델 다이어그램 설명 (Python 코드 구현) (1) | 2025.02.15 |
파이썬 클래스의 캡슐화(Encapsulation) (1) | 2025.02.14 |
파이썬 셸(Python Shell, REPL)과 IDLE 에디터(IDLE, Integrated Development and Learning Environment) (1) | 2025.02.14 |
객체(Object)와 인스턴스(Instance)의 차이점 (1) | 2025.02.13 |