2013-11-26 216 views
0

時當試圖除去在文件名中的零填充(即001.txt改爲1.txt012.txt改爲12.txt)窗口錯誤[錯誤2]在Python,我得到以下錯誤(指第四行):重命名文件

Windows Error: [Error 2]

這裏是我的代碼:

import os 

for filename in os.listdir("testing"): 
    if filename.startswith('00'): 
     os.rename(filename,filename[2:]) 
    elif filename.startswith('0'): 
     os.rename(filename,filename[1:]) 
+4

顯示完整的追溯。 – falsetru

+0

你可以用'os.rename(filename,filename.lstrip('0'))替換你的if-elif條件並使用'glob'模塊:'glob.glob('* .txt')'得到文件名列表。 –

+0

這是一個更快的方法。 – user3036719

回答

2

filename只包含文件名。 (沒有目錄部分:testing

你應該有資格的路徑如下:

os.rename(os.path.join('testing', filename), 
      os.path.join('testing', filename[2:])) 

否則,os.rename發現在當前工作目錄中的文件,而不是在testing目錄。