Отсортировать слова в строке по возрастанию их длины

Вводится строка, состоящая из слов, разделенных пробелами. Требуется отсортировать слова в строке так, чтобы наиболее короткие из них были вначале строки, а наиболее длинные в конце.

Для решения данной задачи проще воспользоваться встроенными в Python функциями и методами строк и списка. 

  1. С помощью строкового метода split() разделяем строку по пробелам. 
  2. С помощью функции sorted() или метода списка sort() сортирует по длине строки. При этом функция len() передается как значение аргумента key. Различие между sorted() и sort() заключается в том, что первый возвращает новый список, а второй сортирует на месте, т. е. изменяет имеющийся. 
  3. С помощью строкового метода join() формируем из списка новую строку.
s = input()
 
s = s.split()
 
s.sort(key=len)
 
s = " ".join(s)
 
print(s)

Пример работы программы:

blue red green yellow pink
red blue pink green yellow

Комментарии