class HomeInfo:
def __init__(self, meter, room, view):
self.meter = meter
self.room = room
self.view = view
class Gharadad:
def __init__(self, gharardad):
self.gharardad = gharardad
class Apartment(HomeInfo):
def __init__(self, meter, room, view, floor, have_parking):
self.floor = floor
self.have_parking = have_parking
super().__init__(meter, room, view)
class House(HomeInfo):
pass
# def __init__(self, garden):
# self.garden = garden
# super().__init__(self.meter, self.room, self.view)
class Rent(Gharadad):
def __init__(self, gharardad, monthly_amount, fixed_amount):
self.monthly_amount = monthly_amount
self.fixed_amount = fixed_amount
super().__init__(gharardad)
class Buy(Gharadad):
def __init__(self, fee, gharardad):
self.fee = fee
super().__init__(gharardad)
class ApartmentRent(Apartment, Rent):
def __init__(self, meter, room, view, floor, have_parking, gharardad, monthly_amount, fixed_amount):
super().__init__(meter, room, view, floor, have_parking, gharardad, monthly_amount, fixed_amount)
def __str__(self):
return f"Meter : {self.meter}\\t Rooms : {self.room}\\t" \\
f" View : {self.view}\\t Floor : {self.floor}\\t" \\
f" have Parking : {self.have_parking}\\t"
f" Monthly : {self.monthly_amount}\\t" \\
f"Fixed : {self.fixed_amount}\\t" \\
f"Gharardad : {self.gharardad}"
class ApartmentBuy(Apartment, Buy):
pass
class HouseRent(House, Rent):
pass
class HouseBuy(House, Buy):
pass
apartmentrent = ApartmentRent(
meter=200, room=1, view="full view", floor=10, have_parking=True,
monthly_amount=20000, fixed_amount=2, gharardad=True)
print(apartmentrent)
# print(apartmentrent.monthly_amount)
# print(ApartmentRent.mro())
سلام.
این نوع ارث بری که انجام دادم رو نتونستم مثلش رو تو اینترنت پیدا کنم منظورم همراه با super() کار شده باشه که چندین ارگومان متفاوت بفرسته.
برای استفاده از super() نمیشه مشخص کرد از چه کلاسی ارث بری بکنه؟