0
我那裏面有父文件夾和子夫婦夾一個子文件夾名稱重命名文件的上一級
parent:
--subfolder1:
-----folderinsidesubfolder1:
-------file.tsv
--subfolder2:
-----folderinsidesubfolder2:
-------file.tsv
我所試圖做的是改變一個水平之上,與文件夾名稱file.tsv是subfolder1,subfolder2這樣
parent:
--subfolder1:
-----folderinsidesubfolder1:
-------subfolder1.tsv
--subfolder2:
-----folderinsidesubfolder2:
-------subfolder2.tsv
代碼:
from os import walk, path, rename
for dirpath, _, files in walk('pathto/parent'):
for f in files:
if f.endswith(".tsv"):
print rename(f, dirpath[-2]+ '.tsv')
錯誤:
OSError: [Errno 2] No such file or directory
這是做正確的方式?
'dirpath'只是一個字符串,你需要把它分解'os.path中。拆分(dirpath)[ - 2]',但你是不是在文件的目錄中工作,所以你需要'os.path.join()''的pathto/parent'用'dirpath' +'新filename'。 – AChampion
@AChampion是這樣的嗎? '(F,path.join(dirpath,(dirpath)[ - 2] + '.tsv格式'))'?我想這仍然得到同樣的錯誤'OSERROR:[錯誤2]沒有這樣的文件或directory' – sbradbio