From f5afe182a3dba186e88c3eba68ac58e2bf043e00 Mon Sep 17 00:00:00 2001 From: Kira Date: Thu, 21 Sep 2023 15:08:17 -0700 Subject: [PATCH] Passing todo list into file to store/reload --- main.py | 36 +++++++++++++++++++++++++++++++----- todo.txt | 0 todos.txt | 4 ++++ 3 files changed, 35 insertions(+), 5 deletions(-) create mode 100644 todo.txt create mode 100644 todos.txt diff --git a/main.py b/main.py index 0d8d0a4..6fd26a2 100644 --- a/main.py +++ b/main.py @@ -13,39 +13,65 @@ # See PyCharm help at https://www.jetbrains.com/help/pycharm/ # ----------------------------------------------------------------- -todos = [] +# todos = [] +#todo_length = len(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: user_action = input(command_prompt) user_action = user_action.strip() match user_action: case 'add': - todo = input(todo_prompt) + todo = input(todo_prompt) + "\n" + file = open('todos.txt', 'r') + todos = file.readlines() + file.close() + todo = todo.capitalize() todos.append(todo) + + file = open('todos.txt', 'w') + file.writelines(todos) + file.close() case 'show' | 'display': + file = open('todos.txt', 'r') + todos = file.readlines() + file.close() for i, todo in enumerate(todos): - text = f"{i}: {todo}" + t = todo.replace("\n","") + text = f"{i+1}: {t}" print(text) case 'edit': + file = open('todos.txt', 'r') + todos = file.readlines() + file.close() which_todo = int(input(edit_prompt)) - 1 new_todo = input(edit_todo) todos[which_todo] = new_todo + file = open('todos.txt', 'w') + file.writelines(todos) + file.close() case 'complete': + file = open('todos.txt', 'r') + todos = file.readlines() + file.close() + 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}" + t = todo.replace("\n","") + text = f"{i+1}: {t}" print(text) + file = open('todos.txt', 'w') + file.writelines(todos) + file.close() case 'exit': break case _: diff --git a/todo.txt b/todo.txt new file mode 100644 index 0000000..e69de29 diff --git a/todos.txt b/todos.txt new file mode 100644 index 0000000..b9cc1f2 --- /dev/null +++ b/todos.txt @@ -0,0 +1,4 @@ +Show +Read +Not this +Or this