From 490dfe9500aefade3842b64ab5322a9c8c6a3416 Mon Sep 17 00:00:00 2001 From: Ogarkov Ilya Date: Sun, 7 Dec 2025 19:27:46 +0300 Subject: [PATCH] =?UTF-8?q?=D0=93=D0=BE=D1=82=D0=BE=D0=B2=D0=BE=20=D0=BA?= =?UTF-8?q?=D0=BE=D0=BD=D1=82=D1=80=D0=BE=D0=BB=D1=8C=D0=BD=D0=BE=D0=B5=20?= =?UTF-8?q?=D0=B7=D0=B0=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5=20control.py?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TEMA9/control.py | 57 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 TEMA9/control.py diff --git a/TEMA9/control.py b/TEMA9/control.py new file mode 100644 index 0000000..1872986 --- /dev/null +++ b/TEMA9/control.py @@ -0,0 +1,57 @@ +class Sotrudnik: + def __init__(self, fio, otdel=None, dolzhnost=None, oklad = 70000): + self.fio = fio + self.otdel = otdel + self.dolzhnost = dolzhnost + self.oklad = oklad + self._pooshreniya = [] + def list_poochreniya(self, poochreniye): + list_poshreniya = [] + list_posreniya.append(poochreniye) + self.poochreniya = list_poochreniya + + def povishenie_oklada(self, oklad_povisheniy): + self.oklad = oklad_povisheniy + print(f'Сумма оклада изменилась с мин. 70000 руб. на {oklad_povisheniy} руб.') + def perevod_otdel(self, perevod_otdel_name): + self.otdel = perevod_otdel_name + print(f'Перевод сотрудника на отдел {perevod_otdel_name}') + def izm_dolzhnost(self, izm_dolzhnost_name): + self.dolznost = izm_dolzhnost_name + print(f'Изменение должности на {izm_dolzhnost_name}') + @property + def pooshreniya(self): + """ + Свойство для получения списка поощрений + + Возвращает: + - копию списка поощрений (для защиты от изменения извне) + """ + return self._pooshreniya.copy() + @pooshreniya.setter + def pooshreniya(self, value): + """ + Сеттер для поощрений (только для очистки списка) + Можно передать пустой список для очистки + """ + if isinstance(value, list) and len(value) == 0: + self._pooshreniya = [] + print(f"Список поощрений {self.fio} очищен") + else: + print("Примечание: для добавления поощрений используйте метод obyavit_blagodarnost()") + + def info(self): + """ + Возвращает строку с информацией о сотруднике + """ + return (f"ФИО: {self.fio}\n" + f"Отдел: {self.otdel}\n" + f"Должность: {self.dolzhnost}\n" + f"Оклад: {self.oklad} руб.\n" + f"Количество поощрений: {len(self._pooshreniya)}") + + def __str__(self): + """Строковое представление объекта""" + return f"Сотрудник: {self.fio} ({self.dolzhnost}, {self.otdel})" + +