Python __mro__

Creator
Creator
Seonglae ChoSeonglae Cho
Created
Created
2021 Jul 23 8:16
Editor
Edited
Edited
2021 Jul 23 8:45
Refs
Refs

MRO(method resolution order)

메서드를 가져오는 순서는 __mro__에 따른다
 
 
메소드를 확인하는 순서
 
 
파이썬 2.3 이후 C3 알고리즘이 도입되어 지금까지 사용
단일상속 혹은 다중상속일 때 어떤 순서로 메서드에 접근할지는 해당 클래스의 __mro__에 저장되는데 왼쪽에 있을수록 우선순위가 높다
부모클래스는 반드시 자식클래스 이후에 위치
최상위 object 클래스까지 확인했는데도 적절한 메서드가 없으면 AttributeError를 발생
 
Interview_Question_for_Beginner/Python at master · JaeYeopHan/Interview_Question_for_Beginner
Generator(제네레이터)는 제네레이터 함수가 호출될 때 반환되는 iterator(이터레이터)의 일종이다. 제네레이터 함수는 일반적인 함수와 비슷하게 생겼지만 yield 구문 을 사용해 데이터를 원하는 시점에 반환하고 처리를 다시 시작할 수 있다. 일반적인 함수는 진입점이 하나라면 제네레이터는 진입점이 여러개라고 생각할 수 있다. 이러한 특성때문에 제네레이터를 사용하면 원하는 시점에 원하는 데이터를 받을 수 있게된다.
Interview_Question_for_Beginner/Python at master · JaeYeopHan/Interview_Question_for_Beginner
 
 

Recommendations