форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
75 строки
2.4 KiB
Markdown
75 строки
2.4 KiB
Markdown
# Индивидуальное контрольное задание по теме 6
|
|
|
|
|
|
|
|
Соловьёва Екатерина, А-01-23
|
|
|
|
|
|
|
|
## Задание
|
|
|
|
|
|
|
|
M2_3
|
|
|
|
1) Создайте список с 5 фамилиями сотрудников некоторой фирмы (фамилии придумайте сами). Создайте кортеж с 5 числовыми элементами - окладами сотрудников из списка.
|
|
|
|
|
|
|
|
2) Запросите у пользователя и введите символьную строку с названием фирмы (латиницей). Удалите из названия пробелы.
|
|
|
|
|
|
|
|
3) Создайте словарь с именем - названием фирмы, ключами - фамилиями сотрудников из списка и значениями - их окладами из кортежа. Отобразите словарь.
|
|
|
|
|
|
|
|
4) Рассчитайте среднее значение оклада сотрудников фирмы и отобразите с заголовком.
|
|
|
|
|
|
|
|
5) Запишите список, кортеж и словарь в бинарный файл с именем - названием фирмы и расширением '.bin'.
|
|
|
|
|
|
|
|
## Решение
|
|
|
|
|
|
|
|
```py
|
|
import pickle
|
|
|
|
spis = ["Бушманов", "Подольский", "Жалнин", "Голощапов", "Таболин"]
|
|
kort = (5000, 200000, 120000, 70000, 60000)
|
|
|
|
company = input(" Введите название фирмы (латиницей): ")
|
|
company = company.replace(' ', '')
|
|
print(" Название фирмы:", company)
|
|
|
|
globals()[company] = dict(zip(spis, kort))
|
|
|
|
print("Словарь фирмы:")
|
|
print(globals()[company])
|
|
|
|
average_salary = sum(kort) / len(kort)
|
|
print(f" Средний оклад сотрудников: {average_salary:.2f} рублей")
|
|
|
|
filename = f"{company}.bin"
|
|
with open(filename, 'wb') as fp:
|
|
pickle.dump(spis, fp)
|
|
pickle.dump(kort, fp)
|
|
pickle.dump(globals()[company], fp)
|
|
|
|
print(f" Данные сохранены в файл: {filename}")
|
|
```
|
|
## Вывод
|
|
```py
|
|
Введите название фирмы (латиницей): name
|
|
Название фирмы: name
|
|
{'Бушманов': 5000, 'Подольский': 200000, 'Жалнин': 120000, 'Голощапов': 70000, 'Таболин': 60000}
|
|
Средний оклад сотрудников: 91000.0 рублей
|
|
```
|
|
|
|
|
|
|