Форум сайта python.su
есть вот такая задача
Напиши класс Person с полями-данными:
age - числовой возраст
name - строковое имя
telephone - телефонный номер
Добавь конструктор и метод dump, который выводит всю инфу о данной персоне в удобном виде.
Создай три экземпляра класса Person и заполни данные и вызови для всех dump().
я написал вот такой код
class Person: def __init__(self): self.name='Alex ' self.age=24 self.telephone=89254510011 def addWeight(self, name1): self.name = name1 def addWeight1(self, age1): self.age = age1 def addWeight2(self, telephone1): self.telephone = telephone1 def poisk(self,name2): self.name==name2 print("name ->", self.name,) print("age ->", self.age,) print("telephone ->", self.telephone) def dump(self): print("name ->", self.name,) print("age ->", self.age,) print("telephone ->", self.telephone) p=Person() p.addWeight('serg') p.addWeight1(24) p.addWeight2(89537647585) p.poisk('serg') p.dump() class Person: def __init__(self): self.name='Ron ' self.age=27 self.telephone=8925140011 def dump(self): print("name ->", self.name,) print("age ->", self.age,) print("telephone ->", self.telephone) p=Person() p.dump() class Person: def __init__(self): self.name='Nick ' self.age=43 self.telephone=89251110421 def dump(self): print("name >", self.name,) print("age ->", self.age,) print("telephone ->", self.telephone) p=Person() p.dump()
Офлайн
Добрый день!
Ваш конструктор класса можно существенно улучшить. Нужно, чтобы он принимал значения с сразу назначал их как атрибуты создаваемому экземляру, например так:
class Person: ''' Awesome class Person. Some details about the class... ''' def __init__(self, name='John Doe', age=10, phone='+14561237456'): self.name = name self.age = age self.telephone = phone
p = Person(name='Alexander', age=28, phone='+791612345')
class PersonArray(list): def lookfor(self, name='John Doe', age=10, phone='+123456'): return PersonArray([person for person in self if (person.name == name) or (person.age == age) or (person.phone == phone)])
Офлайн