diff --git a/main.py b/main.py index 69620f4..8210f99 100644 --- a/main.py +++ b/main.py @@ -1,6 +1,6 @@ """ -Менеджер задач - Версия 2.0 -Тема 2: Работа со списком задач +Менеджер задач - Версия 3.0 +Тема 3: Сохранение данных в файл """ from task import Task @@ -13,16 +13,19 @@ def print_menu(): print("1. Добавить задачу") print("2. Показать все задачи") print("3. Завершить задачу") - print("4. Статистика") + print("4. Удалить задачу") + print("5. Сохранить") + print("6. Загрузить") + print("7. Статистика") print("0. Выход") def main(): manager = TaskManager() - # Добавим несколько демонстрационных задач - manager.add_task("Изучить Python", "Основы языка") - manager.add_task("Сделать проект", "Менеджер задач") + # Автоматическая загрузка при старте + manager.load() + print("Данные загружены!") while True: print_menu() @@ -50,12 +53,29 @@ def main(): print("Задача выполнена!") elif choice == "4": + idx = int(input("Номер задачи для удаления: ")) - 1 + if manager.remove_task(idx): + print("Задача удалена!") + else: + print("Задача не найдена") + + elif choice == "5": + manager.save() + print("Данные сохранены в tasks.json") + + elif choice == "6": + manager.load() + print("Данные загружены из tasks.json") + + elif choice == "7": print(f"Всего задач: {len(manager.list_tasks())}") print(f"Выполнено: {manager.get_completed_count()}") print(f"В ожидании: {manager.get_pending_count()}") elif choice == "0": - print("До свидания!") + # Автосохранение перед выходом + manager.save() + print("Данные сохранены. До свидания!") break