У меня проблема:переупорядочение имен файлов в python
Мне нужно загрузить несколько файлов данных. Файлы называются моим устройством:
meas98.dat
meas99.dat
meas100.dat
meas101.dat
Другими словами, нет начальных нулей. Поэтому, если я получаю имена файлов через
os.listdir
они упорядочены в алфавитном порядке, а это означает «meas100.dat» будет первым. Это, очевидно, не то, чего я хочу достичь. Вопрос в том, что это самый элегантный способ сделать это?
The (unelegant) способ я придумал это:
- нагрузки имена файлы
- извлечь НомерФайл
- заказать Номер_файл (получить индексы)
- порядка имена файлов с этими индексами
Я уверен, что у python есть что-то встроенное, которое может это сделать при загрузке файлов ...
Возможный дубликат [Есть ли у Python встроенная функция для строковой естественной сортировки?] (Http://stackoverflow.com/questions/4836710/does-python-have-a-built-in-function-for-string -natural-sort) – Mureinik
Напишите функцию пользовательской лямбды для сортировки функции. Сортировка по filename.split ('.') [- 1] .replace ('meas') –