Я хотел бы отсортировать список следующих два критерия в следующем порядке:критерии сортировки - упорядоченная()
- числового порядок; затем
- В алфавитном порядке.
настоящее время я использую:
from re import search
my_list = ['nelsonfreire87956423', 'martha34685128', 'gleen34685128', 'polini13452678']
first_sort = sorted(my_list, key=lambda x: [x])
sorted_list = sorted(
first_sort,
key=lambda x: search(r'\d{8}', x).group() if search(r'\d{8}', x) else []
)
print(sorted_list)
Что дает желаемого результата:
['polini13452678', 'gleen34685128', 'martha34685128', 'nelsonfreire87956423']
Я хотел бы знать, как я могу отсортировать этот список только один sorted
вызов. Я имею в виду, как я могу передать несколько критериев до sorted
?
Вы знаете, первый сорт просто 'отсортирован (my_list)', верно? Помещение каждого элемента в другой список вообще не имеет никакого значения. – jonrsharpe
Ох ... это правда! –