Интересно, когда использовать какой аромат Python 3 super().Использование Python 3 super()
Help on class super in module builtins:
class super(object)
| super() -> same as super(__class__, <first argument>)
| super(type) -> unbound super object
| super(type, obj) -> bound super object; requires isinstance(obj, type)
| super(type, type2) -> bound super object; requires issubclass(type2, type)
До сих пор я использовал super()
только без аргументов, и она работала, как и ожидалось (разработчиком Java).
Вопросы:
- Что означает "связанный" означает в этом контексте?
- В чем разница между связанным и несвязанным супер объектом?
- Когда использовать
super(type, obj)
и когдаsuper(type, type2)
? - Было бы лучше назвать суперкласс, как в
Mother.__init__(...)
?
Речь идет конкретно о Python3, но серия сообщений в блоге Симионато являются около python2, и отметить, что * Преимущество заключается в том, что вы избегаете повторять имя из класс в вызывающем синтаксисе, поскольку это имя скрыто в механизме переключения частных имен. *. Это уже не верно в Python3, поэтому, по крайней мере, это преимущество датируется. – gerrit