сортировать список процентов - PullRequest
4 голосов
/ 11 мая 2010

У меня есть следующий список:

l = ['50%','12.5%','6.25%','25%']

Который я бы хотел отсортировать в следующем порядке:

['6.25%','12.5%','25%','50%']

Использование l.sort () дает:

['12.5%','25%','50%','6.25%']

Какие-нибудь интересные трюки для легкой сортировки этих списков в Python?

1 Ответ

15 голосов
/ 11 мая 2010

Вы можете отсортировать с помощью пользовательского ключа

b =['52.5%', '62.4%', '91.8%', '21.5%']
b.sort(key = lambda a: float(a[:-1]))

Это восстанавливает набор, но использует числовое значение в качестве ключа (т. Е. Отбрасывает '%' в строке и преобразует в число с плавающей точкой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...