2014-01-11 7 views
1

Я хочу использовать os.walk для поиска cwd и подкаталогов, чтобы найти конкретный файл и когда его сразу же найти и изменить на этот каталог. Я видел много примеров, где он ломается после поиска файла, но я не могу понять, как получить путь, чтобы я мог изменить каталог.python найти файл и сменить каталог на путь к файлу

ответ

4

Что-то вроде этого?

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

Это было. Простое чистое сжатие. –

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)