Windows 10
Python 3.8.3
Написал я, значит, такую дребедень, чтобы поиграться с наследованием. Первое впечатление какое-то смутное. Вопрос такой: если у меня уже есть родительский класс с параметрами возраста и имени, могу ли я как-нибудь указывать значения этих параметров при создании дочернего класса без дублирования age и name в методе __init__? Пояснение: изначально я писал вот так:
то есть как по определению наследования: мы получаем доступ к методам и атрибутам родительского класса. Но если параметры имя и возраст не дублировать, то программа выдает ошибку при попытке указать эти значения при создании экземпляра класса доктор. Можно ли как-то указать эти атрибуты в экземпляре класса доктор без дубляжа? Если нет то мне не до конца понятны преимущества этого метода...или он заключается не в удобстве пользования атрибутами, а только функциями внутри классов?
Python 3.8.3
Python:
class Human():
def __init__(self, age, name):
self.age = age
self.name = name
def sname(self):
print('My name is: ' + self.name)
class Doctor(Human):
def __init__(self, age, name, profession):
super().__init__(age, name)
self.profession = profession
def sprofession(self):
print('My profession is:' + self.profession)
Mikhael = Doctor('1', '2', '3')
Mikhael.sname()
Mikhael.sprofession()
Написал я, значит, такую дребедень, чтобы поиграться с наследованием. Первое впечатление какое-то смутное. Вопрос такой: если у меня уже есть родительский класс с параметрами возраста и имени, могу ли я как-нибудь указывать значения этих параметров при создании дочернего класса без дублирования age и name в методе __init__? Пояснение: изначально я писал вот так:
Python:
class Doctor(Human):
def __init__(self, profession):
super().__init__(age, name)
self.profession = profession
def sprofession(self):
print('My profession is:' + self.profession)
то есть как по определению наследования: мы получаем доступ к методам и атрибутам родительского класса. Но если параметры имя и возраст не дублировать, то программа выдает ошибку при попытке указать эти значения при создании экземпляра класса доктор. Можно ли как-то указать эти атрибуты в экземпляре класса доктор без дубляжа? Если нет то мне не до конца понятны преимущества этого метода...или он заключается не в удобстве пользования атрибутами, а только функциями внутри классов?
Последнее редактирование модератором: