我只是想寫一個小應用程序,它從名爲'DATA.DAT'的文件中獲取一個值,並用該值重命名包含該文件的文件夾。OSError:目錄不是空的提出,如何解決?
.py腳本運行在另一個文件夾中,並允許用戶定義路徑。爲了給你一個更好的想法,用戶定義的路徑必須是(在Mac上)'/ Users/User/Desktop/FOLDER','FOLDER'應該包含'DATA.DAT'。
這就是源代碼的一小部分的樣子:
try:
data = open('DATA.DAT').read()
data_data = data[12:17]
path_paths = path.rsplit('/')
basepath = '/'.join(path_paths[:-1])
chdir(basepath)
if path_paths[-1] <> data_data:
rename(path_paths[-1], data_data)
raw_input('Folder name has been corrected! Thank you.')
quit()
else:
print('Folder name was already correct! Thank you.')
quit()
except IndexError:
raw_input('ERROR!')
quit()
那麼,它的工作原理;但它提高和異常「文件夾」時,包含多個文件(實際上,「文件夾」應該只包含「data.dat文件」等文件夾。這不給的問題。)...
Traceback (most recent call last):
File "/Users/User/Desktop/example.py", line 72, in <module>
rename(path_paths[-1], data_data)
OSError: [Errno 66] Directory not empty
只是爲了防止這種情況發生,有沒有辦法解決這個問題?謝謝。
將chdir()重命名之前會發生什麼情況?這是什麼平臺? – wberry