Hola Estudiante, espero que estés bien
Entiendo tu confusión con el ejercicio. La clave aquí es el uso del método find(), que encuentra la primera aparición de la subcadena especificada, que en este caso es "curso". En la URL dada, "curso" aparece por primera vez en "aluracursos", pero el método find() no distingue entre las partes de la URL, simplemente busca la primera aparición de "curso".
Por lo tanto, cuando ejecutas el código:
url = "https://www.aluracursos.com/curso?curso=python"
indice_curso = url.find("curso")
indice_valor = indice_curso + len("curso") + 1
valor = url[indice_valor:]
print(valor)
El indice_curso se refiere a la primera aparición de "curso" en "aluracursos", lo que lleva a una salida incorrecta. Para corregir esto y obtener el valor correcto del parámetro "curso", deberías buscar la segunda aparición de "curso" en la URL.
Puedes modificar el código para encontrar la posición correcta del parámetro "curso" de la siguiente manera:
url = "https://www.aluracursos.com/curso?curso=python"
indice_curso = url.find("?curso")
indice_valor = indice_curso + len("?curso") + 1
valor = url[indice_valor:]
print(valor)
Esto debería darte el resultado esperado de "python".
Espero que esto aclare tu duda y te ayude a comprender mejor cómo funciona el método find(). ¡Espero haber ayudado y buenos estudios!