使用python搜索文件夹和文件的目录

2024-04-26 13:20:33 发布

您现在位置: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也要单独保存。


Tags: pathname文件夹forifsooslib
1条回答
网友
1楼 · 发布于 2024-04-26 13:20:33

必须连接当前目录和名称才能获得文件的绝对路径:

for root, dirs, files in os.walk(apkLocation + apkFolder):
    for name in files:
        if name.endswith(("lib", ".so")):
            os.path.join(root, name)

这里也有记录。

相关问题 更多 >