форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
129 строки
3.1 KiB
Markdown
129 строки
3.1 KiB
Markdown
\# Общее контрольное задание по теме 9
|
|
|
|
Турханов Артем, А-03-23
|
|
|
|
\## Задание
|
|
|
|
Создайте и запишите в модуль класс, содержащий следующие компоненты:
|
|
|
|
|
|
|
|
\- конструктор, задающий четырем атрибутам (fio, otdel, dolzhnost, oklad), представляющим фамилии сотрудников, название отделов, названия должностей сотрудников и размеры их окладов, некоторые начальные значения;
|
|
|
|
|
|
|
|
\- метод для обеспечения операции повышения оклада сотрудника на заданное значение;
|
|
|
|
|
|
|
|
\- метод для обеспечения перевода сотрудника из одного отдела в другой;
|
|
|
|
|
|
|
|
\- метод для изменения должности сотрудника;
|
|
|
|
|
|
|
|
\- свойство, содержащее перечень (список) поощрений сотрудника.
|
|
|
|
|
|
|
|
Создайте 2 экземпляра класса, задайте им некоторые значения атрибутов и свойства. Отобразите эти значения. Попробуйте с этими экземплярами операции перевода из отдела в отдел, изменения должности и оклада, объявления благодарности.
|
|
|
|
\## Решение
|
|
|
|
Работа в интерпретаторе Python:
|
|
|
|
```py
|
|
|
|
>>> class myClass():
|
|
|
|
def \_\_init\_\_(self,fio,otdel,dolzhnost, oklad):
|
|
|
|
self.fio = fio
|
|
|
|
self.otdel = otdel
|
|
|
|
self.dolzhnost = dolzhnost
|
|
|
|
self.oklad = oklad
|
|
|
|
self.list\_poosh = \[]
|
|
|
|
def incr(self, a):
|
|
|
|
self.oklad += a
|
|
|
|
def chOtdel(self, otdel):
|
|
|
|
self.otdel = otdel
|
|
|
|
def chDolzh(self, dolzhnost):
|
|
|
|
self.dolzhnost = dolzhnost
|
|
|
|
def blag(self, a):
|
|
|
|
self.list\_poosh.append(a)
|
|
|
|
|
|
|
|
|
|
|
|
>>> a = myClass('Artem', 'Работоспособный', 'Рабочий', 1200)
|
|
|
|
>>> b = myClass('Petr', 'Интеллектуальный', 'Думатель', 2200)
|
|
|
|
>>> a.blag(\['Молодец', 'Отличный работник'])
|
|
|
|
>>> a.list\_poosh
|
|
|
|
\[\['Молодец', 'Отличный работник']]
|
|
|
|
>>> b.blag(\['Красавчик'])
|
|
|
|
>>> b.list\_poosh
|
|
|
|
\[\['Красавчик']]
|
|
|
|
>>> a.fio; a.otdel; a.dolzhnost; a.oklad
|
|
|
|
'Artem'
|
|
|
|
'Работоспособный'
|
|
|
|
'Рабочий'
|
|
|
|
1200
|
|
|
|
>>> b.fio; b.otdel; b.dolzhnost; b.oklad
|
|
|
|
'Petr'
|
|
|
|
'Интеллектуальный'
|
|
|
|
'Думатель'
|
|
|
|
2200
|
|
|
|
>>> a.chOtdel('Умственный')
|
|
|
|
>>> a.otdel
|
|
|
|
'Умственный'
|
|
|
|
>>> b.chDolzh('Умудренный')
|
|
|
|
>>> b.dolzhnost
|
|
|
|
'Умудренный'
|
|
|
|
>>> b.incr(1000)
|
|
|
|
>>> b.oklad
|
|
|
|
3200
|
|
|
|
```
|
|
|