Skip to content

Instantly share code, notes, and snippets.

@pvdrz
Last active March 25, 2020 20:52
Show Gist options
  • Save pvdrz/21edd4bd66937e2bd522a92a7c9037a2 to your computer and use it in GitHub Desktop.
Save pvdrz/21edd4bd66937e2bd522a92a7c9037a2 to your computer and use it in GitHub Desktop.
from datetime import date
class Tarea:
# Inicializar los atributos del objeto
def __init__(self, descripcion, vencimiento):
self.descripcion = descripcion
self.terminada = False
self.vencimiento = vencimiento
# Marcar la tarea como terminada
def terminar(self):
self.terminada = True
# Saber si una tarea está vencida o no
def esta_vencida(self):
return self.vencimiento < date.today()
# Para completar
# Retornar un string con la representación de la tarea. Ejemplo: "<descripcion>, vence el <vencimiento>"
def __repr__(self):
return "Tarea"
# Para completar
# Compara la tarea con otra tarea usando sus fechas de vencimiento, debe retornar un booleano (menor que "<").
def __lt__(self, otra):
return False
class Manejador:
def __init__(self):
self.tareas = []
# Para completar
# Agregar la tarea al final de lista de tareas del manejador
def agregar_tarea(self, tarea):
return None
# Para completar
# Marca como terminada una tarea usando el indice que ocupa la tarea dentro del manejador
def terminar_tarea(self, indice):
return None
# Para completar
# Retorna la tarea con la menor fecha de vencimiento. Si no hay tareas, retorna None.
def buscar_mas_urgente(self):
return None
fecha = date(2020, 4, 1)
mi_tarea = Tarea("Limpiar el cuarto", fecha)
mi_otra_tarea = Tarea("Terminar el taller", date(2020, 4, 10))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment