Contacto:
def __init__(self, nombre, email, telefono):
self.nombre = nombre
self.email = email
self.telefono = telefono
def __str__(self):
return f"Nombre: {self.nombre}, Email: {self.email}, Teléfono: {self.telefono}"
class Agenda:
def __init__(self):
self.contactos = []
def agregar_contacto(self, nombre, email, telefono):
contacto = Contacto(nombre, email, telefono)
self.contactos.append(contacto)
def mostrar_contactos(self):
for contacto in self.contactos:
print(contacto)
def buscar_contacto(self, email):
for contacto in self.contactos:
if contacto.email == email:
return contacto
return None
def eliminar_contacto(self, email):
for contacto in self.contactos:
if contacto.email == email:
self.contactos.remove(contacto)
print("Contacto eliminado")
return
print("Contacto no encontrado")
def editar_contacto(self, email, nombre=None, telefono=None):
for contacto in self.contactos:
if contacto.email == email:
if nombre:
contacto.nombre = nombre
if telefono:
contacto.telefono = telefono
print("Contacto actualizado")
return
print("Contacto no encontrado")
def menu():
print("Agenda de Contactos")
print("1. Agregar contacto")
print("2. Mostrar contactos")
print("3. Buscar contacto")
print("4. Eliminar contacto")
print("5. Editar contacto")
print("6. Salir")
def main():
agenda = Agenda()
while True:
menu()
opcion = int(input("Seleccione una opción: "))
if opcion == 1:
nombre = input("Ingrese el nombre: ")
email = input("Ingrese el email: ")
telefono = input("Ingrese el teléfono: ")
agenda.agregar_contacto(nombre, email, telefono)
elif opcion == 2:
agenda.mostrar_contactos()
elif opcion == 3:
email = input("Ingrese el email del contacto a buscar: ")
contacto = agenda.buscar_contacto(email)
if contacto:
print(contacto)
else:
print("Contacto no encontrado")
elif opcion == 4:
email = input("Ingrese el email del contacto a eliminar: ")
agenda.eliminar_contacto(email)
elif opcion == 5:
email = input("Ingrese el email del contacto a editar: ")
nombre = input("Ingrese el nuevo nombre (opcional): ")
telefono = input("Ingrese el nuevo teléfono (opcional): ")
agenda.editar_contacto(email, nombre, telefono)
elif opcion == 6:
print("Hasta luego!")
break
else:
print("Opción inválida")
if __name__ == "__main__":
main()
0 seguidores
0 seguidos
Que bueno que estas explicando que no necesitamos implementar todo lo que hemos visto en el curso y lo que vimos en el curso es para tener una nocion de que hacer si llegamos a tener una situacion igual o parecida en un futuro, ya que el codigo seria muy largo y hasta confuso si implementara todo lo aprendido, solo haremos lo que el programa necesite para funcionar puede ser uno, dos o hasta mas conceptos ya enseñados gracias por hacer esa aclaracion.