Wiso ist bei show_task nochmal nötig vordran überall "Beschreibung" etc. zu setzen, wenn doch bei add_task schon überall "description" etc. steht.?
tasks = []
def add_task(description, due_date, priority):
task = {
"description": description,
"due_date": due_date,
"priority": priority,
"completed": False,
}
tasks.append(task)
def mark_completed(task_index):
if 0 <= task_index < len(tasks):
tasks[task_index]["completed"] = True
else:
print("Ungültiger Index für Aufgabe!")
def remove_task(task_index):
if 0 <= task_index < len(tasks):
del tasks[task_index]
else:
print("Ungültiger Index für Aufgabe!")
def show_tasks():
for i, task in enumerate(tasks):
status = "Erledigt" if task["completed"] else "Offen"
print(
f"{i + 1}. Beschreibung: {task['description']}, Fälligkeitsdatum: {task['due_date']}, Priorität: {task['priority']} - {status}"
)
def main():
while True:
print("\n--- ToDo-Liste ---")
print("1. Aufgabe hinzufügen")
print("2. Aufgabe als erledigt markieren")
print("3. Aufgabe entfernen")
print("4. Aufgaben anzeigen")
print("5. Beenden")
choice = input("Wähle eine Option: ")
if choice == "1":
description = input("Beschreibung: ")
due_date = input("Fälligkeitsdatum (TT.MM.JJJJ): ")
priority = input("Priorität (hoch/niedrig): ")
add_task(description, due_date, priority)
elif choice == "2":
task_index = int(input("Index der erledigten Aufgabe: ")) - 1
mark_completed(task_index)
elif choice == "3":
task_index = int(input("Index der zu entfernenden Aufgabe: ")) - 1
remove_task(task_index)
elif choice == "4":
show_tasks()
elif choice == "5":
break
else:
print("Ungültige Auswahl!")
main()