@UNy

Наследование, метод __init__?

есть класс Person и есть дочерний класс Manager.
class Person:
    def __init__(self, name, job, salary):
        self.name = name
        self.job = job
        self.salary = salary

class Manager(Person):
    def __init__(self, name, salary):
        super().__init__(name, "manager", salary)


Что бы не прописывать имя при создании экземпляра я его задаю сразу в самом классе.
Вопрос: в чем отличие super().__init__(name, "manager", salary) от Person.__init__(name, "manager", pay)?
2 способ используется если у класса много потомков?
  • Вопрос задан
  • 123 просмотра
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
Форма Person.__init__(name, "manager", pay) - это наследие Python 2.5, считается устаревшей и не рекомендована к применению.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы