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