Quick actions

cmd+k|ctrl+k

Navigation

Languages

4_12_Clases_y_objetos_desafio_1

Snippet info

Language

Python

Visibility

public

Author

jorgetoto2006new

Created

2024-11-09T16:34:14.288703Z

Updated

2024-11-09T16:34:14.288703Z

# Definición de la clase Autor
class Autor:
    
    def __init__(self, nombre="", nacionalidad=""):
        """
        Inicializa los atributos nombre, nacionalidad y una lista vacía para libros.
        """
        self.nombre = nombre
        self.nacionalidad = nacionalidad
        self.libros = []  # Lista para almacenar los títulos de los libros

    def agregar_libro(self, titulo_libro):
        """
        Agrega un título de libro a la lista de libros del autor.
        """
        self.libros.append(titulo_libro)  # Agrega el libro a la lista

    def eliminar_libro(self, titulo_libro):
        """
        Elimina un título de libro de la lista de libros del autor, si existe.
        """
        if titulo_libro in self.libros:
            self.libros.remove(titulo_libro)  # Elimina el libro si está en la lista
        else:
            print(f"El libro '{titulo_libro}' no está en la lista de libros de {self.nombre}.")

    def mostrar_libros(self):
        """
        Muestra todos los libros del autor.
        """
        if self.libros:
            print(f"Libros de {self.nombre}:")
            for libro in self.libros:
                print(f"- {libro}")
        else:
            print(f"{self.nombre} no tiene libros registrados.")

# Ejemplo de uso interactivo
nombre_autor = input("Ingrese el nombre del autor: ")
nacionalidad_autor = input("Ingrese la nacionalidad del autor: ")

autor = Autor(nombre_autor, nacionalidad_autor)  # Crear instancia de Autor

while True:
    print("\nOpciones:")
    print("1. Agregar libro")
    print("2. Eliminar libro")
    print("3. Mostrar todos los libros")
    print("4. Salir")
    
    opcion = input("Seleccione una opción (1-4): ")
    
    if opcion == "1":
        titulo = input("Ingrese el título del libro a agregar: ")
        autor.agregar_libro(titulo)
        print(f"Libro '{titulo}' agregado.")
        
    elif opcion == "2":
        titulo = input("Ingrese el título del libro a eliminar: ")
        autor.eliminar_libro(titulo)
        
    elif opcion == "3":
        autor.mostrar_libros()
        
    elif opcion == "4":
        print("Saliendo del programa.")
        break
    
    else:
        print("Opción no válida. Intente nuevamente.")
INFO