Готово контрольное задание control.py

main
Ogarkov Ilya 3 дней назад
Родитель ebb5e9050f
Сommit 490dfe9500

@ -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})"
Загрузка…
Отмена
Сохранить