by Guest » 08 Feb 2025, 07:15
Ich habe die Aufgabe, eine menschliche Eltern-Kinder-Verbindung über OOP und Vererbung nachzubilden. Es gibt also Klassen für Vater und Mutter, und es gibt auch eine Klasse für Kinder, die zuerst von der Vaterklasse und dann von der Mutterklasse erben sollte (auch ich habe einige zusätzliche Attribute eingefügt, die in den Klassen der Eltern nicht vorhanden sind). p>
Code (unvollendet): < /p>
Code: Select all
class Father:
def __init__(self, surname, name, age, size):
self.surname = surname
self.name = name
self.age = age
if size in range(5, 31):
self.__d_size = size
@property
def d_size(self):
return self.__d_size
@d_size.setter
def d_size(self, size):
if size in range(5, 31):
self.__d_size = size
class Mother:
def __init__(self, surname, name, age, size):
self.surname = surname
self.name = name
self.age = age
if size in range(1, 7):
self.__b_size = size
@property
def b_size(self):
return self.__b_size
@b_size.setter
def b_size(self, size):
if size in range(1, 7):
self.__b_size = size
class Child(Father, Mother):
@property
def gender(self):
# don't bother guessing the principle of the formula and what do "d" and "b" mean here
if (super().d_size + super().b_size) % 2 != 0:
gender = "male"
else:
gender = "female"
return gender
@property
def patronymic(self):
if self.gender == "male":
return super().name + "vich"
else:
return super().name + "vna"
@property
def full_name(self):
return f"{self.surname} {self.name} {self.patronymic}, {self.age} years old, {self.gender}"
if __name__ == '__main__':
alex = Father('Romanov', 'Alexey', 46, 20)
nata = Mother('Naryshkina', 'Natalya', 24, 3)
peter = Child('Peter', 3, 5) #
Ich habe die Aufgabe, eine menschliche Eltern-Kinder-Verbindung über OOP und Vererbung nachzubilden. Es gibt also Klassen für Vater und Mutter, und es gibt auch eine Klasse für Kinder, die zuerst von der Vaterklasse und dann von der Mutterklasse erben sollte (auch ich habe einige zusätzliche Attribute eingefügt, die in den Klassen der Eltern nicht vorhanden sind). p>
Code (unvollendet): < /p>
[code]class Father:
def __init__(self, surname, name, age, size):
self.surname = surname
self.name = name
self.age = age
if size in range(5, 31):
self.__d_size = size
@property
def d_size(self):
return self.__d_size
@d_size.setter
def d_size(self, size):
if size in range(5, 31):
self.__d_size = size
class Mother:
def __init__(self, surname, name, age, size):
self.surname = surname
self.name = name
self.age = age
if size in range(1, 7):
self.__b_size = size
@property
def b_size(self):
return self.__b_size
@b_size.setter
def b_size(self, size):
if size in range(1, 7):
self.__b_size = size
class Child(Father, Mother):
@property
def gender(self):
# don't bother guessing the principle of the formula and what do "d" and "b" mean here
if (super().d_size + super().b_size) % 2 != 0:
gender = "male"
else:
gender = "female"
return gender
@property
def patronymic(self):
if self.gender == "male":
return super().name + "vich"
else:
return super().name + "vna"
@property
def full_name(self):
return f"{self.surname} {self.name} {self.patronymic}, {self.age} years old, {self.gender}"
if __name__ == '__main__':
alex = Father('Romanov', 'Alexey', 46, 20)
nata = Mother('Naryshkina', 'Natalya', 24, 3)
peter = Child('Peter', 3, 5) #