From c36762d2406d22f889d87370a4e9a928b8ef5f88 Mon Sep 17 00:00:00 2001 From: Kira Date: Thu, 21 Sep 2023 13:49:00 -0700 Subject: [PATCH] Full functioning todo system with edit, complete, and exit. --- main.py | 38 +++++++++++++++++++++++++++++++++++--- 1 file changed, 35 insertions(+), 3 deletions(-) diff --git a/main.py b/main.py index 6612273..0d8d0a4 100644 --- a/main.py +++ b/main.py @@ -14,10 +14,42 @@ # ----------------------------------------------------------------- todos = [] +command_prompt = "Type add, show, edit, complete, or exit: " todo_prompt = "Enter a todo: " +edit_prompt = "Number of todo to edit: " +complete_prompt = "Which todo to mark complete: " +edit_todo = "Enter new todo: " todo_length = len(todos) while True: - todo = input(todo_prompt) - todos.append(todo) - print(todos) \ No newline at end of file + user_action = input(command_prompt) + user_action = user_action.strip() + match user_action: + case 'add': + todo = input(todo_prompt) + todo = todo.capitalize() + todos.append(todo) + case 'show' | 'display': + for i, todo in enumerate(todos): + text = f"{i}: {todo}" + print(text) + case 'edit': + which_todo = int(input(edit_prompt)) - 1 + new_todo = input(edit_todo) + todos[which_todo] = new_todo + case 'complete': + completed = int(input(complete_prompt)) - 1 + completed_message = f"'{todos[completed]}' has been completed!" + print(completed_message) + todos.pop(completed) + print("Remaining todos: ") + for i, todo in enumerate(todos): + text = f"{i}: {todo}" + print(text) + case 'exit': + break + case _: + print("Unrecognized command; please try again.") + +print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") +print("Goodbye!") \ No newline at end of file