OneCompiler

urkurk c24

133
 class TaskManager:
#Constructor: no parameters.    
    def __init__(self):
        self.todo = {}
        
    # Adds a task with a priority (1-5). Returns True if successful, False if the task already exists.
    def add_task(self, task, priority):
        if task in self.todo:
            return False
        elif priority < 1 or priority > 5:
            return False
        else:
            self.todo[task] = priority
            return True
        
    # Removes a task. Returns True if successful, False if the task does not exist.
    def remove_task(self, task):
        if task not in self.todo:
            return False
        else:
            del self.todo[task]
            return True
        
    # Returns a sorted list of tasks by priority (lowest to highest).
    def get_tasks(self):
        return sorted(self.todo, key=self.todo.get)
        
    # Returns the priority of a specific task. Returns "N/A" if the task does not exist.
    def get_task_priority(self, task):
        if task not in self.todo:
            return 'N/A'
        else:
            return self.todo[task]