Изменил(а) на 'TEMA9/task9.md'

main
EfimovaLA 4 недель назад
Родитель c7db94a553
Сommit 3fe0c690df

@ -1,112 +1,112 @@
# Общее контрольное задание по теме 9 # Общее контрольное задание по теме 9
Ефимова Людмила, А-03-23 Ефимова Людмила, А-03-23
Создайте и запишите в модуль класс, содержащий следующие компоненты: Создайте и запишите в модуль класс, содержащий следующие компоненты:
- конструктор, задающий четырем атрибутам (fio, otdel, dolzhnost, oklad), представляющим - конструктор, задающий четырем атрибутам (fio, otdel, dolzhnost, oklad), представляющим
фамилии сотрудников, название отделов, названия должностей сотрудников и размеры их фамилии сотрудников, название отделов, названия должностей сотрудников и размеры их
окладов, некоторые начальные значения; окладов, некоторые начальные значения;
- метод для обеспечения операции повышения оклада сотрудника на заданное значение; - метод для обеспечения операции повышения оклада сотрудника на заданное значение;
- метод для обеспечения перевода сотрудника из одного отдела в другой; - метод для обеспечения перевода сотрудника из одного отдела в другой;
- метод для изменения должности сотрудника; - метод для изменения должности сотрудника;
- свойство, содержащее перечень (список) поощрений сотрудника. - свойство, содержащее перечень (список) поощрений сотрудника.
Создайте 2 экземпляра класса, задайте им некоторые значения атрибутов и свойства. Создайте 2 экземпляра класса, задайте им некоторые значения атрибутов и свойства.
Отобразите эти значения. Попробуйте с этими экземплярами операции перевода из отдела в Отобразите эти значения. Попробуйте с этими экземплярами операции перевода из отдела в
отдел, изменения должности и оклада, объявления благодарности. отдел, изменения должности и оклада, объявления благодарности.
## Решение ## Решение
```py ```py
class Employee: class Employee:
def __init__(self, fio = "", otdel="", dolzhnost="",oklad=0): def __init__(self, fio = "", otdel="", dolzhnost="",oklad=0):
self.fio=fio self.fio=fio
self.otdel=otdel self.otdel=otdel
self.dolzhnost=dolzhnost self.dolzhnost=dolzhnost
self.oklad=oklad self.oklad=oklad
self.__pooshreniya=[] self.__pooshreniya=[]
self.pooshreniya = property( self.pooshreniya = property(
self.get_pooshreniya, self.get_pooshreniya,
self.set_pooshreniya self.set_pooshreniya
) )
def change_oklad(self, diff): def change_oklad(self, diff):
self.oklad += diff self.oklad += diff
def change_otdel(self, new_otdel): def change_otdel(self, new_otdel):
self.otdel = new_otdel self.otdel = new_otdel
def change_dolzhnost(self, new_dolzhnost): def change_dolzhnost(self, new_dolzhnost):
self.dolzhnost = new_dolzhnost self.dolzhnost = new_dolzhnost
def get_pooshreniya(self): def get_pooshreniya(self):
return list(self.__pooshreniya) return list(self.__pooshreniya)
def set_pooshreniya(self,pooshrenie): def set_pooshreniya(self,pooshrenie):
self.__pooshreniya.append(pooshrenie) self.__pooshreniya.append(pooshrenie)
def get_employee_info(self): def get_employee_info(self):
print(f""" print(f"""
ФИО: {self.fio} ФИО: {self.fio}
Отдел: {self.otdel} Отдел: {self.otdel}
Должность: {self.dolzhnost} Должность: {self.dolzhnost}
Оклад: {self.oklad} руб. Оклад: {self.oklad} руб.
Поощрения: {self.__pooshreniya} Поощрения: {self.__pooshreniya}
""") """)
``` ```
```py ```py
from Employee import Employee from Employee import Employee
employee1 = Employee("Иванов И.И.", "Отдел ИИ", "Президент ИИ", 100000) employee1 = Employee("Иванов И.И.", "Отдел ИИ", "Президент ИИ", 100000)
employee2 = Employee("Володин Д.В.", "Отдел БЯМоведения", "программист БЯМов", 10000) employee2 = Employee("Володин Д.В.", "Отдел БЯМоведения", "программист БЯМов", 10000)
employee1.get_employee_info() employee1.get_employee_info()
ФИО: Иванов И.И. ФИО: Иванов И.И.
Отдел: Отдел ИИ Отдел: Отдел ИИ
Должность: Президент ИИ Должность: Президент ИИ
Оклад: 100000 руб. Оклад: 100000 руб.
Поощрения: [] Поощрения: []
employee2.get_employee_info() employee2.get_employee_info()
ФИО: Володин Д.В. ФИО: Володин Д.В.
Отдел: Отдел БЯМоведения Отдел: Отдел БЯМоведения
Должность: программист БЯМов Должность: программист БЯМов
Оклад: 150000 руб. Оклад: 10000 руб.
Поощрения: [] Поощрения: []
employee1.change_otdel("Отдел по работе с роботами") # Изменим отдел employee1.change_otdel("Отдел по работе с роботами") # Изменим отдел
employee1.change_oklad(1000) employee1.change_oklad(1000)
employee2.set_pooshreniya("Сертификат на кофеек") employee2.set_pooshreniya("Сертификат на кофеек")
employee1.get_employee_info() # Отображение полной информации об экземпляре класса employee1.get_employee_info() # Отображение полной информации об экземпляре класса
ФИО: Киреев Ю.П. ФИО: Киреев Ю.П.
Отдел: Отдел по работе с роботами Отдел: Отдел по работе с роботами
Должность: Президент ИИ Должность: Президент ИИ
Оклад: 1000 руб. Оклад: 1000 руб.
Поощрения: [] Поощрения: []
employee2.get_employee_info() employee2.get_employee_info()
ФИО: Володин Д.В. ФИО: Володин Д.В.
Отдел: Отдел БЯМоведения Отдел: Отдел БЯМоведения
Должность: программист БЯМов Должность: программист БЯМов
Оклад: 10000 руб. Оклад: 10000 руб.
Поощрения: ['Сертификат на кофеек'] Поощрения: ['Сертификат на кофеек']
``` ```

Загрузка…
Отмена
Сохранить