2014-09-12 79 views
0

我試圖重新命名我的圖片。它們與我的腳本路徑不同,但我可以很好地訪問它們並獲取exif數據。蟒蛇3 os.rename,可以訪問IMG,但不能訪問文件名

然後我試圖重新命名它們,但我總是WinError 3,系統無法找到路徑XX

path2 = (r"C:\Users\xx\PycharmProjects\Test01\imagetesting\_assets") 

path_joined = os.path.join(path2, img) 
os.rename(path2 + "\\" + img, datetime_new + file_type_offset) 

輸出:

FileNotFoundError: [WinError 3]:  
'C:\\\\Users\\\\xx\\\\PycharmProjects\\\\Test01\\\\imagetesting\\\\_assets\\\\IMG_3472.jpg' -> 
'2014/08/21_09/11/45.JPG' 

€:我使用pycharm 3.4.1 fulledition

€2:這項工作也沒有:

path_joined = os.path.join(r'C:\Users\lnerlich\PycharmProjects\Test01\imagetesting\_assets', img) 
os.rename(path_joined, datetime_new + file_type_offset) 

€3:好了第一個問題,用「/」你不能重命名文件,但是當我用「 - 」例如,我得到WinError 32,文件是由另一個進程使用。

+0

如果您在IDLE測試這一點,你可能會發現,解釋已經打開他們做他們的東西,而不是關閉它們,或者(因爲你說你正在閱讀從他們的EXIF數據),你在其他地方開了他們你的腳本並沒有再關閉它們。 – 2014-09-12 13:51:53

+0

我有一種專用於讀取exif數據的方法。最後我打電話給i.close。有沒有其他的過程中,我已經檢查與Process Explorer的 – lnhh 2014-09-12 14:42:21

+0

好吧,我不知道什麼導致該話,但我注意到你似乎是經過完整路徑,重命名的第一個參數,但只適用於文件名第二,你可以試試它的完整路徑嗎? – 2014-09-12 14:45:50

回答

0

我預計Windows在處理那些向前「2014/08/21_09/11/45.JPG」斜槓路徑分隔符,所以與其他字符替換它們,如「 - 」。

相關問題