使用Python的rename()函數重命名文件時出現問題,提示 WindowsError: [Error 2] 錯誤,最初代碼以下:python
def renameFile(filename): filePre = "D:\\FileDemo\\Python\\pt.py" os.rename(filePre, filename) print os.listdir(filePre) if __name__ == '__main__': fileNew = "D:\\FileDemo\\Python\\Test.py" renameFile(fileNew)
後來通過反覆嘗試,問題解決~函數
rename以前要先用chdir()函數進入到目標文件所在的路徑,告訴python編譯器要重命名的文件在哪兒,而後才能夠修改;spa
Python不是可怕的終結者,她其實很幼小,本身找不到文件,須要咱們詳細又耐心的告訴她該去哪兒找~ 路徑經過 os.path.dirname()函數得到:code
import os from nt import chdir def renameF(preName, newName): chdir(os.path.dirname(preName)) os.rename(preName, newName) if __name__ == '__main__': filePre = "D:\FileDemo\Python\PT.py" fileNew = "D:\FileDemo\Python\Test.txt" renameF(filePre, fileNew)
代碼很是簡潔,經過修改filePre,fileNew能夠重命名任意文件。blog