Python でファイルとディレクトリを削除する方法
Python でファイルを削除する
os.remove()
関数は指定されたファイルを削除します。指定されたファイルが存在しないか、ファイル(フォルダーなど)でない場合、またはユーザーに削除する権限がない場合、対応する異常を発生させます。
先に、os.path.isfile()
関数を使って、ファイルが存在するかどうかを確認したり、try...except
異常処理を使用してエラーをキャプチャします。より良い方法として、異常処理をお勧めします。
import os
fileTest = r"C:\Test\test.txt"
try:
os.remove(fileTest)
except OSError as e:
print(e)
else:
print("File is deleted successfully")
上記の例では、ファイルが削除された場合、File is deleted successfully
を出力します。ファイルが存在しない場合に [WinError 2] The system cannot find the file specified: 'C:\\Test\\test.txt'
を出力します。そして削除する権限がない場合、[WinError 5] Access is denied: 'C:\\Test\\test.txt'
のようなアラームメッセージが表示されます。
Python でディレクトリを削除する
shutil.rmtree()
はディレクトリツリー全体、つまり、その中のすべてのファイルとサブディレクトリを削除します。入力引数がディレクトリでない場合、存在しない場合、またはユーザーにそれを削除する権限がない場合、異常が発生します。
import shutil
pathTest = r"C:\Test"
try:
shutil.rmtree(pathTest)
except OSError as e:
print(e)
else:
print("The directory is deleted successfully")