форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
2.5 KiB
2.5 KiB
Индивидуальное контрольное задание по теме 6
Соловьёва Екатерина, А-01-23
Задание
M2_3
-
Создайте список с 5 фамилиями сотрудников некоторой фирмы (фамилии придумайте сами). Создайте кортеж с 5 числовыми элементами - окладами сотрудников из списка.
-
Запросите у пользователя и введите символьную строку с названием фирмы (латиницей). Удалите из названия пробелы.
-
Создайте словарь с именем - названием фирмы, ключами - фамилиями сотрудников из списка и значениями - их окладами из кортежа. Отобразите словарь.
-
Рассчитайте среднее значение оклада сотрудников фирмы и отобразите с заголовком.
-
Запишите список, кортеж и словарь в бинарный файл с именем - названием фирмы и расширением '.bin'.
Решение
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}")
Вывод
Введите название фирмы (латиницей): name1
Название фирмы: name1
Словарь фирмы:
{'name1': {'Бушманов': 5000, 'Подольский': 200000, 'Жалнин': 120000, 'Голощапов': 70000, 'Таболин': 60000}}
Средний оклад сотрудников: 91000.00 рублей
Данные сохранены в файл: name1.bin