어디까지 했더라
Class 이어하기#
Inheritance re#
아쉽게도, 상속을 하는 이유에 대하여 설명이 조금 부족했던 것 같기도 하다. 파이썬에서의 상속도 Java, C++등 다른 OOP 언어들의 패러다임을 그대로 가지고 있겠지? 잠만... 파이썬에는 인터페이스가 없나?
상속은 전에 확인했을 때 부모 클래스의 클래스 attr를 상속받는다고 했다. 하지만 인스턴스 attr은 상속받지 않는다. 다만, 애초에 파이썬의 인스턴스 attr의 개념이 다른 언어랑은 확연하게 다른지라... 그냥 코에 걸면 코걸이 식으로 된다고 이해하자.
Linked List#
이거 공부할 때만 해도 이터레이터를 배우지 않아서 걍 next
체이닝 했다. 이번엔 LinkedList
객체와 그 이터레이터 만들 수 있을지도!
TODO : Linked List in python
class Node:
def __init__(self, data):
self.data = data
self.next = None
def link_to(self, next):
self.next = next
노드1 = Node(10)
노드2 = Node(20)
노드3 = Node(30)
노드1.link_to(노드2)
노드2.link_to(노드3)
노드3.link_to(노드1)
print(노드1.data)
print(노드1.next.data)
print(노드1.next.next.data)
print(노드1.next.next.next.data)
Method Overriding#
정의: 부모에게서 상속받은 attr를 같은 이름으로 재선언하여 사용하는 것.
Multiple Inheritance and mro
builtin function#
Multiple Inheritance and mro builtin function
Private Attributes#
Iterator#
custom iterator with iter in python
Decorator#
decorator - python으로 옮겨감