Как я могу упорядочивать цепь (string) нисходящей формы как Вашей длины?

Как я могу упорядочивать цепь (string) нисходящей формы, а именно, что с самого длинного слова в самую короткую?

3
задан 18.03.2016, 06:56
2 ответа

Я предполагаю, что podrГ-схвати, делать что-либо подобное:

>>> cadena = 'hola me llamo Cesar y soy de Peru'
>>> sorted(cadena.split(), key=lambda palabra: len(palabra), reverse=True)
['llamo', 'Cesar', 'hola', 'Peru', 'soy', 'me', 'de', 'y']
3
ответ дан 01.12.2019, 08:13
  • 1
    с reverse=True, и #191; не упорядочивать и # 237; an в rev и # 233; s? – Jorgesys♦ 23.12.2015, 22:35
  • 2
    @Elenasys est и # 225; прося команду длины нисходящие – César 23.12.2015, 22:35
  • 3
    С key=len это достаточно:) – astrojuanlu 24.12.2015, 21:51
  • 4
    @astrojuanlu просвет, но я думаю, что он так понятнее – César 24.12.2015, 21:52

Если это string содержа несколько слов, возможно упорядочивать с: Вышедшие

misPaises = "Mexico Rumania Argentina Espana Uruguay Peru Ecuador Chile"
for i in reversed(sorted(misPaises.split(), key=lambda item: len(item))):
    print i

:

Argentina
Ecuador
Uruguay
Rumania
Espana
Mexico
Chile
Peru

, Если это список , может быть рукоположенным с: Вышедшие

misPaises = ["México", "Rumania", "Argentina", "España",
             "Uruguay", "Peru", "Ecuador", "Chile"]

for i in reversed(sorted(misPaises, key=len)):
    print i

:

Argentina
Ecuador
Uruguay
España
Rumania
México
Chile
Peru
2
ответ дан 01.12.2019, 08:13
  • 1
    Я думаю, что tiene изначально цепь и не список слов, он и # 237; во вторую часть despu и # 233; s apicar один split – César 23.12.2015, 22:37
  • 2
    у тебя есть raz и # 243; n не договоренность, издавая мой ответ. – Jorgesys♦ 23.12.2015, 22:45
  • 3
    Во втором случае, Espa и # 241; в внизу Румыния ... raz и # 243; n - Пайтон 2. Нужно объявлять unicode (u'España'), или начинаться с from __future__ import unicode_literals. – Francois Dion 24.12.2015, 18:04