Mi proyecto del curso: Introducción a la programación con Python. Gestor de Tareas
di codecaftsman @codecaftsman
- 285
- 0
- 0
El código proporcionado es una aplicación de gestión de tareas desarrollada en Python. Su objetivo es proporcionar a los usuarios una manera de administrar sus tareas pendientes, incorporando funciones como: ver tareas pendientes, agregar nuevas tareas, editar y eliminar.
Desafortunadamente, por el momento, no existe manera de almacenar los datos, es decir, las tareas sólo existen mientras que el código esté en ejecución. Si se detiene, cuando se vuelva a ejecutar no habrá tareas en la lista.
Para solucionar esto me gustaría incorporar lectura/escritura de archivos o almacenamiento en bases de datos como SQLite.
Además me gustaría incorporar un sistema de filtrado de tareas, por prioridad, fecha o estado.
El código está dividido por funciones, cada una con una tarea en específico, desde la creación hasta la eliminación.
# Aplicación de gestión de tareas con Python
from datetime import datetime
# Ejecución Principal del Código
# Manda a llamara a las diferentes funciones necesarias para el funcionamiento del sistema
def menu(listaTareas):
print("*****************************************")
print("**** Bienvenido a su Lista de tareas ****")
print("*****************************************
")
opcion = 0
while True:
print("Por favor seleccione lo que quiere hacer:")
print("1.- Ver tareas pendientes")
print("2.- Agregar nueva tarea")
print("3.- Editar tarea")
print("4.- Eliminar tarea")
print("5.- Salir")
opcion =int(input())
if opcion >= 1 and opcion <= 5:
if opcion == 1:
mostrarTareas(listaTareas)
elif opcion == 2:
crearTarea(listaTareas)
elif opcion == 3:
editarTarea(listaTareas)
elif opcion == 4:
eliminarTarea(listaTareas)
else:
break
else:
print("Opción no válida")
def crearTarea(listaTareas):
print("
*****************************************")
titulo = input("Título: ")
descripcion = input("Descripción: ")
estado = input("Estado de la tarea:")
fechaFinalizacion = input("Fecha de entrega (aaaa-mm-dd): ")
nota = input("Nota: ")
nuevaTarea = {
'Título': titulo,
'Descipción' : descripcion,
'Fecha de creacion' : datetime.now().date(),
'Fecha de finalizacion' : fechaFinalizacion,
'Estado' : estado,
'Nota' : nota
}
listaTareas.append(nuevaTarea)
print("*****************************************
")
def mostrarTareas(listaTareas):
if len(listaTareas) > 0:
for i, tarea in enumerate(listaTareas, start=1):
print(f"
********************{i}********************")
for llave, valor in tarea.items():
print(f"{llave}: {valor}")
print("*****************************************
")
else:
print("
*****************************************")
print(" Parece que no tienes tareas pendientes")
print("*****************************************
")
def editarTarea(listaTareas):
print("
*****************************************")
if len(listaTareas) > 0:
numTarea = int(input("Por favor ingrese el número de la tarea que quiere editar: ")) -1
if numTarea < len(listaTareas):
print(f"
Tarea número {numTarea+1}")
for llave, valor in listaTareas[numTarea].items():
print(f"{llave}: {valor}")
print("
Por favor ingrese los nuevos datos de la tarea:")
titulo = input("Título: ")
descripcion = input("Descripción: ")
estado = input("Estado de la tarea:")
fechaFinalizacion = input("Fecha de entrega (aaaa-mm-dd): ")
nota = input("Nota: ")
nuevaTarea = {
'Título': titulo,
'Descipción' : descripcion,
'Fecha de creacion' : datetime.now().date(),
'Fecha de finalizacion' : fechaFinalizacion,
'Estado': estado,
'Nota' : nota
}
print("Tarea editada con éxito")
listaTareas[numTarea] = nuevaTarea;
else:
print("Número de tarea inválido")
print("*****************************************
")
else:
print(" No tienes ninguna tarea en tu lista")
print("*****************************************
")
def eliminarTarea(listaTareas):
print("
*****************************************")
if len(listaTareas) > 0:
numTarea = int(input("Por favor ingrese el número de la tarea que quiere eliminar: ")) -1
if numTarea < len(listaTareas):
print(f"¿Está seguro de querer eliminar la tarea?")
print("1.- Sí")
print("2.- No")
opcion = int(input())
if opcion == 1:
del listaTareas[numTarea]
print("Tarea eliminada con éxito.")
print("*****************************************
")
else:
print("Cancelado")
print("*****************************************
")
else:
print("Número de tarea inválido")
else:
print(" No tienes ninguna tarea en tu lista")
print("*****************************************
")
# Inicialización de la lista en la que se almacenan las tareas
listaTareas = []
# Ejecución de la aplicación
menu(listaTareas)
















0 commenti
Accedi o iscriviti gratuitamente per commentare