python查找文件并将目录更改为文件路径

时间:2014-01-11 21:44:46

标签: python os.walk chdir

我想使用os.walk搜索cwd和子目录以查找特定文件,并在发现时立即中断并更改为该目录。我已经看到很多在找到文件后中断的示例,但我无法弄清楚如何检索路径位置以便我可以更改目录。

2 个答案:

答案 0 :(得分:4)

这样的东西?

f = 'filename'
for path, dirs, files in os.walk('.'):
    if f in files:
        os.chdir(path)
        break

答案 1 :(得分:0)

import os

required_file = "somefile.txt"
cwd = '.'

def get_dir_name(cwd, required_file):
  for dirName, subdirList, fileList in os.walk(cwd):
    for fname in fileList:
        if fname == required_file:
            change_to_dir = os.path.abspath(dirName)
            return change_to_dir

change_to_dir = get_dir_name(cwd, required_file)
os.chdir(change_to_dir)