Files
course-students/main.py
T
a-limasov 1c9e4a3ba8 Тема 2. Коммит 2: Интерактивное меню
- Полная переработка main.py
- Добавлено интерактивное меню
- Интеграция с TaskManager
- Демонстрационные задачи при запуске
2026-08-28 12:22:39 +03:00

64 lines
2.0 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
"""
Менеджер задач - Версия 2.0
Тема 2: Работа со списком задач
"""
from task import Task
from task_manager import TaskManager
def print_menu():
"""Вывести меню программы"""
print("\n=== Менеджер задач ===")
print("1. Добавить задачу")
print("2. Показать все задачи")
print("3. Завершить задачу")
print("4. Статистика")
print("0. Выход")
def main():
manager = TaskManager()
# Добавим несколько демонстрационных задач
manager.add_task("Изучить Python", "Основы языка")
manager.add_task("Сделать проект", "Менеджер задач")
while True:
print_menu()
choice = input("Выберите действие: ")
if choice == "1":
title = input("Название задачи: ")
desc = input("Описание (необязательно): ")
manager.add_task(title, desc)
print("Задача добавлена!")
elif choice == "2":
tasks = manager.list_tasks()
if tasks:
for i, task in enumerate(tasks, 1):
print(f"{i}. {task}")
else:
print("Список задач пуст")
elif choice == "3":
idx = int(input("Номер задачи: ")) - 1
task = manager.get_task_by_index(idx)
if task:
task.mark_complete()
print("Задача выполнена!")
elif choice == "4":
print(f"Всего задач: {len(manager.list_tasks())}")
print(f"Выполнено: {manager.get_completed_count()}")
print(f"В ожидании: {manager.get_pending_count()}")
elif choice == "0":
print("До свидания!")
break
if __name__ == "__main__":
main()