ファイルのリストの拡張子を、txt を rar に変更するなど、別の拡張子に変更する Python 関数を作成しています。これは単なるアイドル例です。しかし、私はエラーが発生しています。コードは次のとおりです。
import os
def dTask():
#Get a file name list
file_list = os.listdir('C:\Users\B\Desktop\sil\sil2')
#Change the extensions
for file_name in file_list:
entry_pos = 0;
#Filter the file name first for '.'
for position in range(0, len(file_name)):
if file_name[position] == '.':
break
new_file_name = file_name[0:position]
#Filtering done !
#Using the name filtered, add extension to that name
new_file_name = new_file_name + '.rar'
#rename the entry in the file list, using new file name
print 'Expected change from: ', file_list[entry_pos]
print 'into File name: ', new_file_name
os.rename(file_list[entry_pos], new_file_name)
++entry_pos
Error:
>>> dTask()
Expected change from: New Text Document (2).txt
into File name: New Text Document (2).rar
Traceback (most recent call last):
File "<pyshell#10>", line 1, in <module>
dTask()
File "C:\Users\B\Desktop\dTask.py", line 19, in dTask
os.rename(file_list[entry_pos], new_file_name)
WindowsError: [Error 2] The system cannot find the file specified
プリントアウトでわかるように、可変レベルで別の拡張子を持つファイル名を取得することに成功しますが、OS レベルでこのプロセスを終了できないため、実際にはそうではありません。エラーは os.rename(...) から来ています。これを修正する方法はありますか?