Предмет: Информатика, автор: romi42008

Описати клас Користувач (User), який задовольняє наступні умови:

В класі оголошений атрибут класу count_users, в який при створенні об'єкту класу User записувати нову кількість користувачів.
Конструктор класу приймає обов'язковий параметр "ім'я" (name) і зберігає його значення як атрибут об'єкту.
В конструкторі реалізований підрахунок кількості створених об’єктів класу User.
Клас має наступні методи об'єкту:
Змінити ім'я користувача (change_username) з обов'язковим параметром username, який в результаті роботи змінює значення атрибуту об'єкту name на значення параметру username.
Клас має наступні методи класу:
Вивід кількості вже створених (get_count) користувачів на екран.
Клас має наступні статичні методи:
Підготувати ім'я (prepare_name) з обов'язковими параметрами name, last_name, second_name, який повертає в результаті роботи Бутенко С.О. при введених значеннях "Сергій", "Бутенко", "Олександрович".
Додаткові умови:
Ім'я користувача (name) вводиться користувачем з клавіатури;
Нове ім'я користувача (new_name) вводиться користувачем з клавіатури;
Нове прізвище користувача (new_last_name) вводиться користувачем з клавіатури;
Нове по батькові користувача (new_second_name) вводиться користувачем з клавіатури;
Обов'язково використовуйте декоратори.
Використовуйте запропоновані назви методів і класів.

Ответы

Автор ответа: TemaZpro
0

Код на Python:

class User:

   count_users = 0

   def __init__(self, name):

       self.name = name

       User.count_users += 1

   def change_username(self, username):

       self.name = username

   @classmethod

   def get_count(cls):

       print(f"Количество созданных пользователей: {cls.count_users}")

   @staticmethod

   def prepare_name(name, last_name, second_name):

       return f"{last_name} {name[0]}.{second_name[0]}."

name = input("Введите имя пользователя: ")

user = User(name)

new_name = input("Введите новое имя пользователя: ")

user.change_username(new_name)

User.get_count()

new_last_name = input("Введите новую фамилию пользователя: ")

new_second_name = input("Введите новое отчество пользователя: ")

prepared_name = User.prepare_name(new_name, new_last_name, new_second_name)

print(f"Подготовленное имя: {prepared_name}")

Похожие вопросы
Предмет: Геометрия, автор: pupil10919
Предмет: История, автор: simonovaalina239