Реализовать на Python простейшую картотеку в виде консольного приложения.
Приложение включает:
1. Класс, описывающий элемент картотеки (студент, служащий и т.п.). Содержит атрибуты, описывающие элемент (имя, возраст и т.п.) и функции, позволяющие считать атрибуты объекта с консоли и выводить их на экран.
2. Класс-потомок элемента картотеки, содержащий несколько дополнительных полей и функции ввода/вывода.
3. Контейнерный класс (группа, компания и т.п.), содержащий:
- контейнер (список либо словарь) элементов;
- функцию добавления элемента;
- функцию вывода списка на экран;
- функцию чтения списка из файла;
- функцию записи списка в файл;
- функцию очистки списка.
4. Функцию main, выводящую и обрабатывающую текстовое меню, которое позволяет воспользоваться всеми функциями, экспортируемыми контейнерным классом.
Требования к реализации:
- реализовать каждый класс в отдельном модуле, плюс один модуль для функции, выводящей меню и запускающей функции контейнерного класса;
- взаимодействие с пользователем осуществляется через простое текстовое меню, выбор действия - ввод цифры;
- меню включает в себя следующие пункты: добавить объект выбранного типа, редактировать, удалить объект, вывести на экран весь список, сохранить в файл, загрузить из файла;
- реализовать обработку меню с помощью словаря/списка ссылок на функции;
- данные сохраняются с помощью модуля pickle.