2017-01-17 75 views
0

我一直試圖在一個文件夾內的89個pdf文件的開頭添加「Q3」。我已設法得到結果與解決方案HERE使用Python重命名pdf文件的目錄幾乎可行

這項工作,但只對大約10-15個文件,然後它停止與各種各樣的錯誤,似乎沒有一個定義的順序,這意味着每次大約10-15是不同的。我收到一個「FileNotFoundError:[WinError 2]系統找不到指定的文件:」或「PermissionError:[WinError 32]進程無法訪問文件,因爲它正在被另一個進程使用:」012734 「permissionserror」是因爲我正在和正在運行的.py文件與pdf文件位於同一個目錄中,因此它正在運行此文件。但是在上面的鏈接解決方案中提出將它放在同一個目錄中以解決WinError2,並且在這之前它不會做任何事情。代碼

*第一部分是刪除一些不需要的文件顯示出來,並可能不相關質疑

import os 
my_dir = "DIRECTORY OF PDF FILES" 
for fname in os.listdir(my_dir): 
    if fname.startswith('Copy') or fname.startswith('SxDI'): 
     os.remove(os.path.join(my_dir, fname)) 

for fname in os.listdir(my_dir): 
    os.rename(fname, "Q3" + fname) 
+0

這是一個有效的網址嗎? – innisfree

+0

我的歉意沒有完全複製。鏈接正在工作 – Ungara

回答

0

看起來你正在改變,你是遍歷列表。

嘗試:

files_to_rename = [fname in os.listdir(my_dir) if not (fname.startswith('Copy') or fname.startswith('SxDI'))] 

for fname in files_to_rename: 
    os.rename(fname, "Q3" + fname") 

這是未經測試,但這個想法就是抓住你首先需要改變,然後去改變他們的一切的名稱。