Python сортировать строки в списке строк по 3 последним символам и числу - PullRequest
0 голосов
/ 08 мая 2020

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

input = ['foobaraaa1', 'foobaraab1', 'foobaraac1', 'foobaraaa2', 'foobaraab2', 'foobaraacc']

Мне нужно отсортировать его по убыванию по последним 4 символам и правилу numbers < letters и распечатать первый вывод

In в этом случае мне нужно, чтобы результат был foobaraacc

, мой код выглядит так:

print((f'Latest Released Firmware SM-J400F: ' + sorted(result,key=lambda x: (x[::-4], len(x)),reverse=True)[0]))

Но он не работает должным образом

1 Ответ

3 голосов
/ 08 мая 2020

Ваша ключевая функция… странная. Зачем вы туда поставили len(x)? ИМХО этого должно хватить:

print((f'Latest Released Firmware SM-J400F: ' + sorted(result,key=lambda x: x[-4:],reverse=True)[0]))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...