2017-06-05 69 views
0

我需要重命名我的代碼中的文件夾。如何重命名在另一個路徑中的文件夾?

我當前的代碼:

target_file = input("Input folder that you want to rename >>>") 
rename = input("Please write a new name for it >>> ") 
try : 
    os.rename(target_file, rename) 
    print("Successfull") 
except : 
    print("!!! You didn't write file name right. Try again !!!") 

這段代碼在當前工作路徑下重命名文件夾。但我需要重命名其他路徑中的文件,如下所示:

os.rename(C:\\user\\oldname, newname) 

是否有可能?

+1

你的意思是'os.rename( 'C:\\ \\用戶使用oldName', 'C:\\ \\用戶NEWNAME')'? – khelwood

+0

'os.rename('C:/ user /'+ oldname,newname)'? –

+0

他們沒有工作 –

回答

0

可以,但你必須要小心,你使用絕對路徑,第一個參數,而第二個是相對路徑。

兩個詞,這意味着你會發現你正在尋找的文件,但它將你的腳本在運行該文件夾中保存

正如評論建議,如果你想只有在保持同一位置的同時才進行重命名,則必須每次都寫絕對路徑,或者找到一種巧妙的方法將您輸入的相對路徑作爲第二個參數轉置爲相對路徑...

One idea將分割你的第一個參數,以獲得絕對路徑減去你想重命名的文件夾:

target_file_path = '/'.join(target_file.split('/')[:-1])

相關問題