Я новичок здесь python, и меня поразила довольно простая проблема - и я ищу наиболее эффективный способ решить эту проблему. Итак, у меня есть 5 списков:сортировка нескольких списков в python на основе сортировки одного списка
a,b,c,d,score
, где приведенные выше списки имеют одинаковый размер (500 в моем случае). a,b,c,d
- это строковые списки, а score
- это список int
.
Что бы я хотел сделать, это сортировать a,b,c,d
на основе возрастания или убывания Сортировка score
. Итак, сначала я хотел бы отсортировать score
на основе нисходящего шаблона, а затем отсортировать соответствующие элементы в a,b,c,d
на основе отсортированного списка баллов (в том же порядке).
Я думал о enumerate
, чтобы добиться этого, но мне интересно, можно ли использовать здесь itertools
, чтобы сделать его быстрее и эффективнее.
Любые указания относительно того, как это может быть достигнуто, будут очень благодарны & & Извините, если это вопрос 101.
См. Подобные вопросы здесь: http: // stackoverflow.com/questions/6618515/sorting-list-on-values-from-another-list – alecxe
, который, в свою очередь, является обманом http://stackoverflow.com/q/9543211/989121. Однако, если списки большие и python == 2, то 'it.izip' будет лучше, чем просто' zip'. – georg