Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > Python
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.11.2018, 18:24   #1
pythonist
 
Регистрация: 25.11.2018
Сообщений: 3
По умолчанию Формирование списка из имен файлов

Здравствуйте. Есть папка с файлами, их около 200 (пример: SLMA00.T00-24.05032017,...,SLMA00.T00-24.0202017,...,SLMA00.T00-24.07072017,SLMA00.T00-24.1305017,...,SLMA00.T00-24.02092017, ...- это файлы формата grib с метеорологическими данными ). Они изначально неотсортированы. Нужно сформировать список из имен этих файлов так, чтобы они были отсортированы по дате в названии по возрастанию, то есть: SLMA00.T00-24.02022017,...,SLMA00.T00-24.05032017,..., SLMA00.T00-24.13052017,...,24.07072017,...,SLM A00.T00-24.02092017,... . При этом, в папке находятся также файлы других форматов, которые нужно исключать при формировании списка.

Есть код, который просто формирует неотсортированный список:
Код:
import os
 
gribfiles = []
path = 'data2017/weather/'
for file in os.listdir(path):
    if file.endswith("2017"):
    gribfiles.append(str(file))
print(gribfiles)
Буду благодарен за помощь.

Последний раз редактировалось pythonist; 25.11.2018 в 18:54.
pythonist вне форума Ответить с цитированием
Старый 25.11.2018, 22:31   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от pythonist Посмотреть сообщение
SLMA00.T00-24.1305017
этот файл не должен попасть в выборку?


Цитата:
Сообщение от pythonist Посмотреть сообщение
Нужно сформировать список из имен этих файлов так, чтобы они были отсортированы по дате в названии по возрастанию
напишите свою функцию сортировки.
сортировать можно да хоть тем же пузырьком - тыц (хотя в Python явно есть более красивые способы).
для сравнения выделяйте из имени файла последние 8 символов (причём последние 4 сцепить с 5-6 от конца строки символами и сцепить с 7-8 от конца строки символами
полученные строки сравнивать и использовать в качестве ключа сортировки.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Необходима программа для перевода списка имен из excel в контакты на андроиде alligator80 Фриланс 3 22.08.2018 09:25
Очистка списка имен UserForm из памяти iNataliya Microsoft Office Excel 4 30.08.2013 00:21
Чтение русских имен файлов Karmadon Общие вопросы C/C++ 9 21.03.2012 05:31
Формирование списка с определенным шагом 23i Microsoft Office Excel 3 07.06.2010 09:14
Формирование списка файлов в папке на листе. mephist Microsoft Office Excel 3 12.08.2009 17:59