Top.Mail.Ru
Ответы

ПОМОГИТЕ С ООП НА ПИТОНЕ

Проблема такая, я практиковал ооп на питоне и решил попрактиковать полиморфизм. Итог этот код работает
class City: #учил Полиморфизм и наследованиеp
year = None
name = None

def __init__(self, y,n):
self.name = n
self.year = y
self.get_info()

def get_info(self):
print("Name: ", self.name, " Year: ", self.year)

class Capital(City):
musei = None
ad = None

def __init__(self, ad, musei, y, n):
super(Capital, self).__init__(y, n)
self.ad = ad
self.musei = musei
self.get_info()

def get_info(self):
super().get_info()
print("Adminatration:", self.ad, "Musium:", self.musei)

# city_1 = City(1783, "Bob")

city_2 = Capital(2,50,1800, "Grip")


А этот нет

1234567891011121314151617181920212223242526
 class Mom:
    name = None
    age = None
    
    def __init__(self, a, n):
        self.age = a
        self.name = n
        self.get_data()
    
    def get_data(self):
        print("Name:", self.name, "Age:", self.age)
        
        
class Dad(Mom):
    x = None
    
    def __init__(self, x, a, n):
        super(Mom, self).__init__(a, n)
        self.x=x
    
    def get_data(self):
        super().get_data()
        print("Lol", self.x)
       
# lol = Mom(2,4)
lol = Dad(2,4,5) 
123456789
 Текст ошибки такой 


Traceback (most recent call last): 
  File "d:\py\2.py", line 26, in <module> 
    lol = Dad(2,4,5) 
  File "d:\py\2.py", line 18, in __init__ 
    super(Mam, self).__init__(a, n) 
TypeError: object.__init__() takes exactly one argument (the instance to initialize) 
По дате
По рейтингу
Аватар пользователя
Новичок
1
 super(Dad, self).__init__(a, n) 

или просто

1
 super().__init__(a, n) 
Аватар пользователя
Ученик

питон не обьектно ориентированный язык чеееееееееееееееееееееееел