Esta es la solución al Ejercicio #6: En tres líneas de código.
El ejercicio era relativamente sencillo. En él, solo hay que combinar varias funciones para obtener el resultado deseado. De hecho, la solución se puede obtener incluso con una sola línea de código, pero por cuestiones de legibilidad, mejor hacerlo con dos o tres.
A continuación, te muestro varios ejemplos de soluciones:
Solución con tres líneas de código
s = input('Introduce una secuencia de palabras > ') words = s.upper().split(' ') print(' '.join(sorted(set(words))))
Solución con dos líneas de código
s = input('Introduce una secuencia de palabras > ') print(' '.join(sorted(set(s.upper().split(' ')))))
Solución con una línea de código
print(' '.join(sorted(set(input('Introduce ... > ').upper().split(' ')))))
Explicación
Voy a desgranar lo que hace cada una de las funciones:
split(' ')
: Crea una lista formada por cada una de las palabras de la cadena de entrada.set()
: Crea un conjunto formado por las palabras de la lista que se pasa como argumento. Al tratarse de un conjunto, las palabras duplicadas se eliminan.sorted(list(...))
: Devuelve una lista ordenada con los elementos del iterable que se pasa como argumento.' '.join(...)
: Crea una cadena compuesta por los elementos de la lista ordenada separados por el carácter espacio.