¡Hola Juan! Cómo va? Espero que todo bien :)
Gracias por compartir tu código y explicar tu problema. Parece que estás teniendo dificultades para obtener el mismo resultado que el profesor al generar las partes de una palabra. Después de revisar tu código, puedo ver que el problema está en la forma en que estás construyendo la lista de partes.
En tu función generar_partes
, estás creando una lista vacía llamada partes
dentro del bucle for
. Esto significa que la lista se reinicia en cada iteración del bucle y solo contiene la última parte generada. Para solucionar esto, debes mover la línea partes = []
antes del bucle for
, de esta manera la lista se crea una sola vez y puedes ir agregando las partes a medida que iteras.
Aquí está el código corregido:
palabra = 'lgica'
def generar_partes(palabra):
partes = [] # Mueve esta línea antes del bucle
for i in range(len(palabra)+1):
partes.append((palabra[:i],palabra[i:]))
return partes
print(generar_partes(palabra))
Con esta corrección, deberías obtener el resultado deseado:
[('', 'lgica'), ('l', 'gica'), ('lg', 'ica'), ('lgi', 'ca'), ('lgic', 'a'), ('lgica', '')]
Espero que esto resuelva tu problema. Si tienes alguna otra pregunta, no dudes en preguntar. ;)
Si este post te ayudó, por favor, marca como solucionado ✓.