Я использую Python 2.7 и у меня есть этот список:Сортировка списка и Dict ключи
photos = ['arthur20.jpg', 'arthur7.jpg', 'arthur11.jpg', 'arthur3.jpg', 'arthur5.jpg', 'arthur17.jpg', 'arthur15.jpg', 'arthur2.jpg', 'arthur13.jpg', 'arthur8.jpg', 'arthur9.jpg', 'arthur18.jpg', 'arthur4.jpg', 'arthur6.jpg', 'arthur10.jpg', 'arthur12.jpg', 'arthur14.jpg', 'arthur19.jpg', 'arthur16.jpg', 'arthur1.jpg']
Как я могу организовать этот список? Я пытался использовать sort()
, но он не работает, он вернулся мне это:
['arthur1.jpg', 'arthur10.jpg', 'arthur11.jpg', 'arthur12.jpg', 'arthur13.jpg', 'arthur14.jpg', 'arthur15.jpg', 'arthur16.jpg', 'arthur17.jpg', 'arthur18.jpg', 'arthur19.jpg', 'arthur2.jpg', 'arthur20.jpg', 'arthur3.jpg', 'arthur4.jpg', 'arthur5.jpg', 'arthur6.jpg', 'arthur7.jpg', 'arthur8.jpg', 'arthur9.jpg']
, а также строки из списка будут ключи к Dict, и я должен положить ключи в порядке тоже, как это :
dict = {"arthur1.jpg":1, "arthur2.jpg":2 ...}
Хотя принятый ответ делает это ясным неявным образом - этот вопрос выиграет от расширения «это не сработало» - каким образом это не сработало? Упрощенный список входных данных и порядок, который он отсортировал, уточнят это и сделают какой-то способ сделать [минимальный, полный и проверяемый пример] (http://stackoverflow.com/help/mcve) –
Ой, прости, я буду будьте внимательнее. Причина этого не в том, что когда я использую функцию sort() для своих «фотографий», имена все равно не будут в порядке: ["arthur10.jpg", "arthur8.jpg", "arthur7.jpg" , "arthur6.jpg", "arthur5.jpg", "arthur20.jpg", arthur19.jpg "," arthur18.jpg "," arthur17.jpg "...]. В списке будут сегменты. – arthurckl
Да, я понимаю, что порядок, который вы видите, лексикографичен, поэтому вы увидите, например, [arthur1 ',' arthur10 ',' arthur11 ',' arthur2 '...] после сортировки. Идея здесь заключается в том, что вы спрашиваете вопрос, который ясен будущим читателям и потенциальным респондентам - вот почему я предлагаю вам изменить, иначе вопрос может быть закрыт, поскольку он не соответствует этим критериям. Проверьте [как спросить] (http:// /stackoverflow.com/help/how-to-ask) для официальной линии по всему этому - я просто подобрал ваш вопрос через закрытую аудиторию с обзором голосов и подумал, что могу предложить небольшой совет. –