У меня есть каталог с дополнительными подкаталогами, каждый из которых имеет файлы с определенным расширением.Я могу получить имена всех файлов, используя функцию glob:
for name in glob.glob('*/*[a-b]*'):
print(os.path.basename(name))
, которая печатает имена файлов, которые у меня есть во всех подкаталогах:
PF44_aa
PF52_aa
PF95_aa
PF38_aa
PF45_aa
PF63_aa
PF68_aa
PF39_aa
Однако, еслиЯ передаю эти имена файлов в качестве аргументов, чтобы открыть файлы и прочитать их содержимое:
for name in glob.glob('*/*[a-b]*'):
filename=os.path.basename(name)
with open('%s' %filename) as fn:
content = fn.readlines()
Я получаю следующую ошибку:
File "<ipython-input-194-147f38fc2684>", line 1, in <module>
with open('%s' %filename) as fn:
FileNotFoundError: [Errno 2] No such file or directory: 'PF44_aa'
Я также попытался указать имя файла непосредственно в качестве ввода вместоиз %s
:
for name in glob.glob('*/*[a-b]*'):
filename=os.path.basename(name)
with open(filename) as fn:
content = fn.readlines()
Но все равно появилась та же ошибка:
File "<ipython-input-193-fb125b5aa813>", line 1, in <module>
with open(filename) as fn:
FileNotFoundError: [Errno 2] No such file or directory: 'PF44_aa'
Что я делаю не так и как я могу это исправить?