Pythonを使用してファイルまたはフォルダを削除してみます。
ファイル、フォルダを削除するためには、osモジュールを使っていきます。osモジュールはPythonの標準ライブラリとなっていますので、事前にインストールしておく必要はありません。
■Python
今回のPythonのバージョンは、「3.8.2」を使用しています。(Windows10)
■テストで削除するファルダとファイルを作る
今回はテストでファルダとファイルを削除してみますので、そのためのフォルダとファイルを作ります。
作ったファイルは「ghost(幽霊)」という名前のフォルダと、「ghost(幽霊)」という名前の.xlsx形式のファイルです。フォルダパスは「C:\Users\user\ghost」です。
■osモジュールを使って削除する
■ファイルを削除する
フォルダとファイルを作りましたので、まずファイルを削除してみます。
■コード
import os os.remove(r"C:\Users\user\ghost\ghost.xlsx")
インポートでosモジュールを呼び出して、os.remove()で今回作成した.xlsx形式のファイルを指定します。
■実行
今回のコードを「delete-test.py」という名前で保存し、コマンドプロンプトから実行してみると、ファルダから「ghost(幽霊)」という名前の.xlsx形式のファイルが削除されていることが確認できました。
■ファルダを削除する
では、次にフォルダを削除してみます。
■コード
import os os.rmdir(r"C:\Users\user\ghost")
フォルダを削除した時とは異なりos.remove()ではなく、os.rmdir()を使います。os.rmdir()で削除するファルダを指定します。
■実行
先程、同じく「delete-test.py」という名前で保存し、コマンドプロンプトから実行してみると、「ghost(幽霊)」という名前の.xlsx形式のファイルが削除されていることが確認できました。
■ファイルを含むフォルダを削除する
では、次にファルダ内にファイルが存在している状態で、これら全てを削除してみます。
■コード
import shutil shutil.rmtree(r"C:\Users\user\ghost")
ファイルを含むフォルダを削除する場合は、インポートでshutilモジュールを呼び出して、shutil.rmtree()で削除するフォルダ(ファイルを含む)を指定します。
import os shutil.rmtree(r"C:\Users\user\ghost")
上記のようにosモジュールでshutil.rmtree()を記述すると、
Traceback (most recent call last):
File “C:\Users\user\delete-test.py”, line 3, in <module>
shutil.rmtree(r”C:\Users\user\ghost”)
NameError: name ‘shutil’ is not defined
上記の「shutil」というのが定義されていないというエラーが発生します。
■実行
shutilモジュールを呼び出して、「delete-test.py」という名前で保存し、コマンドプロンプトから実行してみると、ファイルを含むフォルダが削除されていることが確認できました。
コメント