Full functioning todo system with edit, complete, and exit.
This commit is contained in:
parent
b28c8013a7
commit
c36762d240
38
main.py
38
main.py
|
@ -14,10 +14,42 @@
|
||||||
# -----------------------------------------------------------------
|
# -----------------------------------------------------------------
|
||||||
|
|
||||||
todos = []
|
todos = []
|
||||||
|
command_prompt = "Type add, show, edit, complete, or exit: "
|
||||||
todo_prompt = "Enter a todo: "
|
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)
|
todo_length = len(todos)
|
||||||
|
|
||||||
while True:
|
while True:
|
||||||
todo = input(todo_prompt)
|
user_action = input(command_prompt)
|
||||||
todos.append(todo)
|
user_action = user_action.strip()
|
||||||
print(todos)
|
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!")
|
Loading…
Reference in New Issue