Python Assessment
Python Assessment
1. Introduction:
The Task Manager application is designed to provide users with a convenient way to manage tasks
effectively. This document outlines the requirements, functionalities, and specifications for the
development of the Task Manager application.
2. Functional Requirements:
The Task Manager application should fulfill the following functional requirements:
3. Class Structure:
● Task Class:
● Attributes: id, title, description, priority, status.
● Methods: init (), str ().
● TaskManager Class:
● Attributes: tasks (list of Task objects).
● Methods: init (), add_task(), edit_task(), delete_task(),
get_task_by_id(), view_all_tasks(), filter_tasks_by_priority().
4. User Interaction:
● The Task Manager application should provide a command-line interface for user
interaction.
● Users should be presented with a menu containing options to perform various tasks
(add, edit, delete, view all tasks, filter tasks by priority, exit).
● Users should input their choice by entering a corresponding number.
5. Error Handling:
● The Task Manager application should provide error handling for invalid user
inputs, such as incorrect task IDs or priority/status values.
● Error messages should be displayed to guide users in correcting input errors.