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