/
eb
/
python_learn
Обзор
Документация
Войти
/
eb
/
python_learn
Код
Запросы
0
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
oop/method_resolution_order.py
38 строк
662 B
EvgeniyBudaev
method_resolution_order
14 фев 2021, 13:37
14 фев 2021, 13:37
bf81cdc
Код
Авторство
О чём код?
# Method Resolution Order # A # / \ # B C # \ / # D class A: def some_method(self): print('Method of class A') class B(A): @classmethod def some_method(cls): print('Method of class B') class C(A): def some_method(self): print('Method of class C') class D(B, C): pass # def some_method(self): # print('Method of class D') # __mro__, mro(), help() print(D.__mro__) # цепочка вызовов (<class '__main__.D'>, <class '__main__.B'>, <class '__main__.C'>, <class '__main__.A'>, <class 'object'>) print(D.mro()) # тот же самый порядок # help(D) # some_object = D() # some_object.some_method()