클래스
클래스 정의
class BusinessCard:
pass
메소드 추가
class BusinessCard:
def set_info(self, name, email, addr):
self.name = name
self.email = email
self.addr = addr
생성자
class MyClass:
def __init__(self):
print("객체가 생성되었습니다.")
self
class Foo:
def func1():
print("function 1")
def func2(self):
print("function 2")
Foo 클래스의 func2 메서드는 메서드의 인자가 self뿐이므로 실제 메서드를 호출할 때는 인자를 전달할 필요가 없습니다.
f = Foo()
f.func2()
파이썬 메서드의 첫 번째 인자로 항상 인스턴스가 전달되기 때문에 발생하는 문제입니다
f.func1() // TypeError: func1() takes 0 positional arguments but 1 was given"
소멸자
class Account:
num_accounts = 0
def __init__(self, name):
self.name = name
Account.num_accounts += 1
def __del__(self):
Account.num_accounts -= 1
클라스 상속
class Parent:
def can_sing(self):
print("Sing a song")"
class LuckyChild(Parent):
pass