У меня есть файлы в папках и подпапках. структура папок такая:
2020(folder)
-01(sub folder)
--14(sub-sub folder)
----abc1-2020-01-14.csv
----abc2-2020-01-14.csv
-02(subfolder in 2020)
--17(sub-sub folder in 02)
----abc1-2020-02-17.csv
----abc4-2020-02-17.csv
У меня есть список имен файлов. li = ['abc1', 'abc2', 'abc3', 'abc4']
Я хочу знать, существует ли этот файл в каталоге или нет. В каждом подкаталоге должно быть все 4 файла. если нет, то код должен возвращать путь там, где определенного файла не существует.
import glob
BASE_PATH = r'2020/'
allin= BASE_PATH + '/*/*'
li = ['abc1','abc2','abc3','abc4']
print('Names of files:')
for name in glob.glob(allin):
print('\t', name)
for k in li:
try:
f = open(r"C:\\Users\\Karar\\ProjectFiles\\scripts\\"+ name + "\\" + k + "*.csv")
except IOError:
print(name+k+ ".csv""File not present")
print name is returning 2020\01\14 and 2020\02\17
Я испытываю трудности с указанием пути в методе open. Также обратите внимание, что мое имя файла, хранящееся в папках, имеет дату в конце, поэтому необходимо указать это также в пути, чтобы для любой даты в конце имени файла, если папка содержала файлы с именем в списке, ничего не делалось, но если файлы отсутствует в подпапках, затем распечатайте файл EXCEPT, отсутствующий вместе с путем. обратите внимание, что каждая папка должна содержать все 4 файла, если нет, то возвращать, кроме.