Skip to main content
 首页 » 编程设计

python之在 Python 中更改为已知的目录名称但未知的绝对路径

2025年05月04日16xing901022

我想将 cwd 更改为特定文件夹。 文件夹名称已知;但是,通往它的路径会有所不同。

我正在尝试以下操作,但似乎无法得到我要找的东西:

absolute_path = os.path.abspath(folder_name) 
directory_path = os.path.dirname(absolute_path) 
os.chdir(directory_path) 

这不符合我的要求,因为它将原始 cwd 保留到运行 .py 文件的位置。我尝试在第一个代码块之前添加 os.chdir(os.path.expanduser("~"));但是,它只是创建到/home/user/folder_name 的绝对路径。

当然,如果有一个我可以使用的简单导入,我会接受任何东西。

获取具有特定名称的所有文件夹的路径的正确方法是什么?

请您参考如下方法:

def find_folders(start_path,needle): 
   for cwd, folders, files,in os.walk(start_path): 
       if needle in folders: 
           yield os.path.join(cwd,needle) 
 
for path in find_folders("/","a_folder_named_x"): 
    print path 

所有这一切所做的就是从给定的起始路径向下遍历您的目录结构,并找到名为 needle 的文件夹的所有出现

在示例中,它从系统的根文件夹开始并寻找名为“a_folder_named_x”的文件夹...请注意,如果您需要搜索整个系统,这可能需要一段时间才能运行...