Я хочу проверить, есть ли у последних подкаталогов в дереве каталогов определенные файлы.
Например, если есть следующие подкаталоги, которые я хочу просмотреть:
C:\Test Dir\My Dir\ABC
C:\Test Dir\My Dir\Your Dir\XYZ
C:\Test Dir\My Dir\Your Dir\PQR
Iхотите проверить, есть ли в подкаталогах ABC, XYZ и PQR хотя бы один файл со следующим шаблоном: * Orange * .txt
Если, скажем, в ABC есть файл ABC_Orange_true.txt и XYZ,и PQR не имеет файла, соответствующего указанному выше шаблону, я хочу получить их в списке следующим образом:
list = ['C: \ Test Dir \ My Dir \ Your Dir \ XYZ','C: \ Test Dir \ My Dir \ Your Dir \ PQR']
До сих пор я написал следующий код, но застрял здесь:
import os
subdir_list = []
txt_list = []
list = []
for dirName, subdirList, fileList in os.walk('.'):
subdir_list.append(subdirList)
for fname in fileList:
file_list.append(fname)
if '.txt' in fname:
if 'Orange' in fname:
txt_list.append(fname)
subdir_list = [i for i in subdir_list if i][-1]
print subdir_list
print txt_list
Этот код дает мнеимена файлов и список подкаталогов следующим образом:
['ABC', 'XYZ', 'PQR']
['ABC_Orange_true.txt']
Мне нужна помощь для достижения конечного результата:
>>list
>>['C:\Test Dir\My Dir\Your Dir\XYZ', 'C:\Test Dir\My Dir\Your Dir\PQR']