Я ищу для фильтрации файлов в каталоге, а затем назначить часть этого filename
(значение, которое я пытаюсь сопоставить изменениям) с переменной. Структура filename
соответствует следующему примеру. *test file on part-of-filename-of-interest.csv
. Последняя часть filename
- это часть, которую я хотел бы добавить к переменной. Так что это всегда будет последняя часть имени файла и после слова on
.Чтение имени файла и применение части этого имени к переменной
Я могу отфильтровать все интересующие файлы, используя нижеследующее, но я не уверен, как захватить раздел part-of-filename-of-interest
, чтобы поместить его в значение переменной.
for root, dirs, files in os.walk('dirpath'):
filters = '*test file on*.csv'
for filename in fnmatch.filter(files, filters):
print filename #I get all the files im interested in but I dont know how to capture the relevant part of the filename to place it in a variable
Вы уверены, что вам нужен вложенный цикл? [Пример в документации] (https://docs.python.org/2/library/fnmatch.html) этого не делает. – TigerhawkT3
Thats, потому что пример не имеет нескольких dirs, чтобы пройти;). Независимо от вложенного цикла, проблема заключается в том, чтобы получить частичное имя файла для переменной. Не для того, чтобы скомпилировать файлы. – iNoob
Я смог составить рабочий фильтр, основанный на ответе digitaLink. – iNoob