import json
import os
def load_tasks(filename):
if os.path.exists(filename):
with open(filename, 'r') as file:
return json.load(file)
return []
def save_tasks(tasks, filename):
with open(filename, 'w') as file:
json.dump(tasks, file)
def display_tasks(tasks):
if not tasks:
print("Your to-do list is empty.")
else:
print("Your To-Do List:")
for index, task in enumerate(tasks, start=1):
print(f"{index}. {task}")
def main():
filename = 'tasks.json'
tasks = load_tasks(filename)
while True:
print("\nOptions:")
print("1. Add task")
print("2. Remove task")
print("3. View tasks")
print("4. Exit")
choice = input("Select an option (1-4): ")
if choice == '1':
task = input("Enter the task: ")
tasks.append(task)
save_tasks(tasks, filename)
print(f"Task '{task}' added.")
elif choice == '2':
display_tasks(tasks)
try:
task_index = int(input("Enter the task number to remove: ")) - 1
if 0 <= task_index < len(tasks):
removed_task = tasks.pop(task_index)
save_tasks(tasks, filename)
print(f"Task '{removed_task}' removed.")
else:
print("Invalid task number.")
except ValueError:
print("Please enter a valid number.")
elif choice == '3':
display_tasks(tasks)
elif choice == '4':
print("Exiting the To-Do List Manager.")
break
else:
print("Invalid option. Please try again.")
if __name__ == "__main__":
main()