У меня есть структура каталогов, как показано ниже.Поиск каталога для папок и файлов с использованием python
MainFolder
|
[lib]
/ | \
[A] [B] [C] -- file1.so
| | file2.so
file1.so file1.so
file2.so file2.so
Я пытаюсь найти папку «lib» в этой структуре, которая иногда может отсутствовать. Поэтому я использую следующий для проверки наличия «Lib» папки:
if os.path.isdir(apkLocation + apkFolder + '/lib/'):
Если Lib папки существует, то я продолжаю искать папки внутри «Lib». Я должен хранить имена папки A, B и C и искать файлы, заканчивающиеся на «.so», путь которых должен храниться как /lib/A/file1.so,/lib/A/file2.so и так далее на.
if os.path.isdir(apkLocation + apkFolder + '/lib/'):
for root, dirs, files in os.walk(apkLocation + apkFolder):
for name in files:
if name.endswith(("lib", ".so")):
print os.path.abspath(name)
Это дает мне из
file1.so
file2.so
file1.so
file2.so
file1.so
file2.so
Желаемая выход:
/lib/A/file1.so
/lib/A/file2.so
/lib/B/file1.so
/lib/B/file2.so
/lib/C/file1.so
/lib/C/file2.so
, а также папки A, B и C должны быть сохранены отдельно.
'apkLocation + apkFolder + '/ lib /'' - Не добавлять сегменты пути - используйте 'os.path.join (apkLocation, apkFolder, 'lib')' – Eric
Спасибо, что помогли – DesperateLearner