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