/
Carton
/
python-course-tasks
Обзор
Документация
Войти
/
Carton
/
python-course-tasks
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
task_08_05_01/main.py
169 строк
5 KB
Yuri Petrov
+ перенос заданий в отдельный репозиторий
02 июл 2020, 02:05
02 июл 2020, 02:05
5312992
Код
Авторство
О чём код?
# Программирование на языке высокого уровня (Python). # https://www.yuripetrov.ru/edu/python # Задание task_08_05_01. Вариант !!! # # Выполнил: Фамилия И.О. # Группа: !!! # E-mail: !!! """Комплексная задача. Сложность: !!! """ # Это пример кода, он может быть произвольно усложнен # в рамках ограничений темы # # Требования: # # - переделайте функцию load_db() на загрузку данных из JSON-файла; # - добавьте функцию save_db(), которая бы сохраняла db в CSV-файл; # - используйте функцию save_db() для сохранения результатов фильтрации; # - добавьте обработку исключений. # Замените атрибуты словаря и др. на соответствующие своему варианту def load_db(filename): """Загрузить данные из json-файла 'filename'. Функция не обрабатывает исключения. Результат: list of dict или возбуждается исключение. Сложность: !!! """ # Удалите комментарий и допишите код def save_db(db, filename): """Сохранить данные 'db' в csv-файл 'filename'. Функция не обрабатывает исключения. Сложность: !!! """ # Удалите комментарий и допишите код def print_object(item): """Вывести объект 'item' на экран со всеми атрибутами. Сложность: !!! """ # Удалите комментарий и допишите код def filter_object(db, ...): """# Удалите комментарий и допишите строку документации Сложность: !!! """ # Удалите комментарий и допишите код def avg_object(db, ...): """# Удалите комментарий и допишите строку документации Сложность: !!! Исключения: - !!! """ # Удалите комментарий и допишите код try: db = load_db() while True: print("\n-----") print("Меню") print("-----") print("1. Список сотрудников.") # Удалите комментарий и допишите код print("\nВыберите пункт меню или нажмите ENTER для выхода: ", end="") answer = input() if answer == "1": print("Содержимое базы данных ({}):".format(len(db))) # Удалите комментарий и допишите код elif # Удалите комментарий и допишите код else: break except ... # -------------- # Пример вывода: # # ----- # Меню # ----- # 1. Список сотрудников. # 2. Фильтр по языку программирования. # 3. Средний рост сотрудников, моложе указанного г.р. # # Выберите пункт меню или нажмите ENTER для выхода: 1 # Содержимое базы данных (3): # 1. # Имя: 1 # День рождения: 01/12/2000 # Рост (см.): 170 # Вес (кг.): 70.5 # Есть машина: True # Языки программирования: ['С++', 'Python'] # 2. # Имя: 2 # День рождения: 01/06/2001 # Рост (см.): 180 # Вес (кг.): 110.4 # Есть машина: False # Языки программирования: ['Pascal', 'Delphi'] # 3. # Имя: 3 # День рождения: 14/07/1998 # Рост (см.): 180 # Вес (кг.): 66.9 # Есть машина: True # Языки программирования: ['C#', 'C++', 'C'] # # ----- # Меню # ----- # 1. Список сотрудников. # 2. Фильтр по языку программирования. # 3. Средний рост сотрудников, моложе указанного г.р. # # Выберите пункт меню или нажмите ENTER для выхода: 2 # Введите язык программирования: Python # Список сотрудников со знанием языка программирования Python (1): # 1. # Имя: 1 # День рождения: 01/12/2000 # Рост (см.): 170 # Вес (кг.): 70.5 # Есть машина: True # Языки программирования: ['С++', 'Python'] # # ----- # Меню # ----- # 1. Список сотрудников. # 2. Фильтр по языку программирования. # 3. Средний рост сотрудников, моложе указанного г.р. # # Выберите пункт меню или нажмите ENTER для выхода: 3 # Введите год рождения сотрудника: 2000 # Средний рост сотрудников, 2000 г.р. и моложе: (175.0) см.