Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Entendiendo el uso del break

Hola!, esta es mi solución, pero tiene solo un defecto, el nombre proporcionado en la lista libros debe ser digita igual ( me refiero a mayúsculas y espacios iguales) de lo contrario no funcionara, un saludo

libros = ["1984", "Cien años de soledad", "El Principito", "El Hobbit", "Orgullo y Prejuicio"]

print(f"los libros disponibles son:", libros)

librox = str(input("Porfavor digite el nombre de alguno de los libros: "))

for libro in libros:
if librox == libro:
print(f"libro encontrado: es, {libro}")

1 respuesta

¡Hola David, espero que estés bien!

Entiendo tu preocupación sobre la sensibilidad a mayúsculas y espacios en la comparación de los nombres de los libros. Una forma de solucionar este problema es asegurarte de que tanto el nombre ingresado por el usuario como los nombres en la lista estén en el mismo formato antes de compararlos. Puedes convertir ambos a minúsculas usando el método .lower() y eliminar espacios adicionales con .strip(). Aquí tienes un ejemplo de cómo podrías ajustar tu código:

libros = ["1984", "Cien años de soledad", "El Principito", "El Hobbit", "Orgullo y Prejuicio"]

print(f"Los libros disponibles son:", libros)

librox = input("Por favor, digite el nombre de alguno de los libros: ").strip().lower()

for libro in libros:
    if librox == libro.lower():
        print(f"Libro encontrado: {libro}")
        break

Con este ajuste, el programa debería funcionar correctamente sin importar si el usuario ingresa el nombre del libro con mayúsculas o minúsculas, o con espacios adicionales al principio o al final.

Espero que esta solución te sea útil y que puedas seguir avanzando en tu aprendizaje de Python. ¡Espero haber ayudado y buenos estudios!