Форум сайта python.su
0
Добрый день, занимаюсь самообучением, не могу понять, почему не работает мой код.
Задача была такой, придумать себе задачу, которая использует композиционный подход в объектно-ориентированном программировании.
выдаёт ошибку:
Traceback (most recent call last):
File “F:\Python34\People.py”, line 24, in <module>
m1.mn(90,190,25,'Филипп')
File “F:\Python34\People.py”, line 21, in mn
self.m = Man(k,s,y,n)
TypeError: object() takes no parameters
class Woman: def peop_wom(self,kg,sm,year, name): self.name_is = name class Man: def peop_man(self,kg,sm,year, name): self.name_is = name class People: def weight(self, kg): self.weigh_t = kg def growth(self, sm): self.growt_h = sm def age(self, year): self.years = year def out_w_g_a(self): print(self.weight,'kg',self.growth,'sm',self.years,'years') def wmn(self,k,s,y,n): self.w = Women(k,s,y,n) def mn(self,k,s,y,n): self.m = Man(k,s,y,n) m1 = People() m1.mn(90,190,25,'Филипп')
Офлайн
.
Отредактировано J.R. (Фев. 27, 2016 16:39:46)
Офлайн
53
J.R.
внятное обьяснение
HanmaBaki
при создании экземпляра класса Man будет вызываться конструктор класса - метод __init__, в который и передаются аргументы
[url=http://younglinux.info/oopython/init.php]вот немного инфы[/url]
Офлайн