Имена и инициалы

Напишите класс Name и создайте атрибуты для передаваемых имени и фамилии (fname и lname соответственно), а также:

  • атрибут fullname, возвращающий имя и фамилию,
  • атрибут initials, возвращающий первые буквы имени и фамилии с точкой между ними.

Не забудьте дать доступ и к атрибутам fname и lname. Проследите, чтобы только первые буквы имен и фамилий были заглавными.

Примеры

a1 = Name("john", "SMITH")

a1.fname ➞ "John"
a1.lname ➞ "Smith"
a1.fullname ➞ "John Smith"
a1.initials ➞ "J.S"

Варианты решения

class Name:    
    def __init__(self, fname, lname):
        self.fname = fname.title()
        self.lname = lname.title()
        self.fullname = '{} {}'.format(self.fname, self.lname)
        self.initials = '{}.{}'.format(self.fname[0], self.lname[0])
class Name:    
    def __init__(self, a, b):
        self.fname = a.lower().capitalize()
        self.lname = b.lower().capitalize()
        self.fullname = self.fname + " " + self.lname
        self.initials = self.fname[0] + "." + self.lname[0]
class Name:
    def __init__(self, fname, lname):
        self.fname = fname.capitalize()
        self.lname = lname.capitalize()
        self.fullname = self.fname + " " + self.lname
        self.initials = self.fname[0] + "." + self.lname[0]

Прокрутить вверх