Class란?
class의 instance(실체)들을 object(객체)라 하고 object를 표현하기 위한 문법이나 개념을 class라 한다.
✔️ 클래스를 사용하면 코드의 구조를 더 효과적으로 구현할 수 있고 이렇게 클래스 위주로 코드를 작성하는 것을 객체 지향 프로그래밍(object oriented programming)이라 한다.
class ClassName:
attribute = value # class attribute, 모든 인스턴스가 공유
def __init__(self, parameter): # method
self.attribute = parameter # attribute
.
.
instance = ClassName() # 인스턴스(객체) 생성
instance.attribute # 인스턴스 속성에 접근
ClassName.attribute # 클래스 속성에 접근
속성(attribute)란? class에 정의되는 모든 공통 요소를 말한다.
__init__
메소드를 통해 정의되고 __init__
메소드는 클래스가 실체화 될때 자동으로 호출된다.method
라고 한다.self
파라미터는 class의 실체(instance)인 객체(object)를 가르키고 클래스를 실체화 할때 파이썬이 해당 객체(self)를 __init__
메소드에 넘겨준다.self
파라미터가 첫번째 파라미터로 들어가야 한다.✔️ Attribute vs Method