*객체를 만들 줄 알면, 파이썬이 진짜 쉬워집니다.*
파이썬은 객체지향 언어입니다.
즉, 우리가 만들어 쓰는 모든 변수와 기능은
사실 ‘객체’라는 구조 안에 들어 있어요.
이번 편에서는 클래스를 정의하고,
객체를 만들고, 그 안에 변수와 함수를 담는
**객체지향의 가장 핵심적인 흐름**을 배워봅니다.
━━━━━━━━━━━━━━━━━━━
🧱 클래스란?
- 객체를 만들기 위한 ‘설계도’
- 변수와 함수를 묶어 재사용 가능하게 함
- 실제로 사용하려면 클래스를 ‘인스턴스화’해야 함
━━━━━━━━━━━━━━━━━━━
📦 1. 클래스 기본 구조
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def greet(self):
print(f"안녕하세요. 저는 {self.name}입니다.")
me = Person("지민", 26)
me.greet()
- `__init__`: 생성자 함수 (객체 생성 시 자동 호출됨)
- `self`: 자기 자신을 가리키는 키워드
- 클래스에서 만든 변수 = 인스턴스 변수
- 클래스 안의 함수 = 메서드
━━━━━━━━━━━━━━━━━━━
👥 2. 여러 객체 만들기
user1 = Person("준호", 30)
user2 = Person("수연", 24)
print(user1.name) # 준호
print(user2.age) # 24
- 하나의 클래스 정의로 여러 객체를 만들 수 있음
- 각 객체는 서로 다른 데이터를 가질 수 있음
━━━━━━━━━━━━━━━━━━━
🔧 3. 클래스에 기능(메서드) 추가
class Calculator:
def __init__(self):
self.result = 0
def add(self, num):
self.result += num
print("현재 값:", self.result)
calc = Calculator()
calc.add(5)
calc.add(3)
━━━━━━━━━━━━━━━━━━━
📚 4. 상속 (기존 클래스 확장하기)
class Animal:
def sound(self):
print("소리를 냅니다.")
class Dog(Animal):
def sound(self):
print("멍멍!")
d = Dog()
d.sound() # 멍멍!
- `class 자식(부모):` 구조로 상속
- 부모 클래스의 기능을 그대로 사용하거나 재정의 가능
━━━━━━━━━━━━━━━━━━━
💡 클래스는 언제 쓰나?
- 관련된 변수와 기능을 하나로 묶고 싶을 때
- 비슷한 구조의 객체를 여러 개 만들 때
- 데이터를 구조화해서 코드를 더 읽기 쉽게 만들고 싶을 때
━━━━━━━━━━━━━━━━━━━
💬 킴별의 한마디
“클래스를 이해하면 프로그램이 입체적으로 보입니다.
데이터와 기능이 하나로 묶이는 걸 경험해보세요.
실무 자동화도 대부분 클래스 기반으로 구성됩니다.”
━━━━━━━━━━━━━━━━━━━
'PYTHON' 카테고리의 다른 글
[중급 4편] 파일 처리 심화.zip (0) | 2025.05.11 |
---|---|
[중급 3편] 예외처리 고급.zip (0) | 2025.05.11 |
[중급 2편] 모듈과 패키지 기초.zip (0) | 2025.05.10 |
[PYTHON /Import ] 파이썬 import Requests error 해결 하기 (0) | 2021.01.26 |