십대를 위한 코딩/십대를 위한 파이썬

파이썬의 내장형 클래스 쉽게 이해하기

forSilver 2025. 2. 15. 16:10
반응형

🐍 파이썬의 내장형 클래스 쉽게 이해하기

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() 함수를 사용하면 데이터가 어떤 클래스인지 확인할 수 있습니다.