Я некоторое время боролся с сортировкой списка на основе предыдущего отсортированного списка в Python 3, и хотя я бы попросил помощи у вас, ребята.
Хорошо, поэтому у меня есть список:
list = ['A103', 'A101', 'C101', 'B101']
Этот список отсортирован в алфавитном, а затем числовом формате со следующим кодом:
convert = lambda text: int(text) if text.isdigit() else text
alphanum_key = lambda key: [convert(c) for c in re.split('([0-9]+)', key)]
list_sorted = sorted(list, key=alphanum_key)
Новый список list_sorted выглядит так: ['A101', 'A103', 'B101', 'C101']
.
Теперь к хитрой части, у меня есть другой список со значениями, соответствующими значениям в «списке», которые должны быть отсортированы таким же образом.
Пример:
list = ['A103', 'A101', 'C101', 'B101']
rad = ['£', '$', '€', '@']
list_sorted =['A101', 'A103', 'B101', 'C101']
rad = ['$', '£', '@', '€'].
ВсеПомощь высоко ценится, спасибо!