【发布时间】:2013-09-22 12:44:31
【问题描述】:
我的目录结构如下所示。
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')
标签: python path operating-system directory