2011-10-06 66 views
0

所以我讓用戶設置一個路徑到一個可能包含子目錄(更多級別)和文件的目錄。在python中如何找出os.walk()的當前路徑?

我用os.walk()在我的代碼掃描整個目錄:

for root, subdirs, files in os.walk(thispath): 
    for myfile in files: 
    shutil.move(os.path.realpath(myfile), os.path.join(thispath,filename)) 

但 「os.path.realpath(MYFILE)」,而不是給我 「MYFILE」 的絕對路徑(我也試過「os.path.abspath(myfile)」,但基本上做了同樣的事情),給了我腳本運行的路徑;就像附帶myfile文件名的os.chdir()一樣。基本上os.path.realpath(myfile)= os.path.join(os.chdir(),myfile),而myfile顯然是在任何其他的隨機目錄,所以它不應該。

當我嘗試移動該文件時,它說它不存在,這是真的,它不在它看起來的路徑中。

如何獲取我正在行走的文件(「myfile」)的絕對路徑?

+1

...你可能認爲'root'是爲了什麼? –

+0

謝謝。我認爲這很難,所以我嘗試了其他一切 – Danny

回答

1
for root, subdirs, files in os.walk(this_path): 
    for my_file in files: 
    shutil.move(os.path.join(root, my_file), os.path.join(this_path, filename)) 
相關問題