2013-04-12 2 views
1

У меня есть несколько файлов, хранящихся в моем каталоге в соответствии с их датами, такими каксортировать файлы по названию в питоне

01mar13 
09mar13 
20feb13 
27jan13 

моя проблема, я хочу, чтобы отсортировать их таким образом, что его расположен как

27jan13 
20feb13 
01mar13 
09mar13 

У меня такое чувство, что это должно быть очень просто. Был бы признателен, если бы кто-то мог указать мне на правильное направление решения моей проблемы.

+4

Если возможно, сохраните в формате yyyymmdd - проблема решена ... – YXD

+0

@kojiro: Отсортировано по дате, конечно. –

+0

Являются ли файлы с именем '01mar13' или это какое-то форматирование даты, которое вы сортируете? Возможно, будет dumbquestion ... –

ответ

3
from datetime import datetime 
import glob 

sorted(glob.glob('*'), key=lambda x: datetime.strptime(x, '%d%b%y')) 

возвращает список имен файлов, отсортированных в хронологическом порядке (век игнорируется). И да, хранение файлов в формате YYYYMMDD является хорошим решением.

+0

Извините слишком много языков на ходу - удалено – YXD

Смежные вопросы