# 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.")