Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonでディレクトリ(フォルダ)を削除する方法をわかりやすく解説

Pythonでディレクトリ(フォルダ)を削除したい場合、そのディレクトリが「空」かどうかによって使う関数が異なります。この記事では、代表的な2つの方法を具体例とともに解説します。

空のディレクトリを削除する:os.rmdir()

中身が空っぽのフォルダを削除したい場合は、標準ライブラリ os モジュールの rmdir 関数を使います。

使用例

>>> import os
>>> os.rmdir('my_folder')

なお、指定したフォルダ内にファイルやサブフォルダが1つでも残っていると、OSError が発生して削除に失敗します。その点には注意してください。

ファイルが入ったディレクトリを丸ごと削除する:shutil.rmtree()

フォルダの中にファイルが入っていても、まとめてすべて削除したい場合は、shutil モジュールの rmtree 関数を使用します。この関数は、指定したディレクトリとその中身(サブフォルダ・ファイルすべて)を再帰的に一括で削除してくれます。

使用例

>>> import shutil
>>> shutil.rmtree('my_folder')

使い分けのポイント

  • 空のフォルダだけを安全に消したいos.rmdir()
  • 中身ごと完全に消したいshutil.rmtree()

shutil.rmtree() は一度実行すると元に戻せないため、重要なデータが含まれていないか事前に確認してから実行することをおすすめします。また、パスの指定ミスによる誤削除を防ぐため、絶対パスではなく相対パスで慎重に指定するのも有効です。

  1. Pythonで再帰的にディレクトリを作成するには?os.makedirsの使い方を解説

    再帰的にディレクトリを作成する方法 Pythonで、まだ存在しない親ディレクトリも含めてまとめてフォルダを作成したい場合は、標準ライブラリの os.makedirs() を使用します。作成したいパスを引数として渡すだけで、途中階層のディレクトリがすべて自動的に生成されます。 import os os.makedirs(my_folder/another/folder, exists_ok=True) このコードでは、「my_folder」→「another」→「folder」というように、必要なディレクトリが一括で作成されます。 exists_ok=True を指定する理由 引数 exists

  2. Pythonでディレクトリを作成する方法をわかりやすく解説

    Pythonでディレクトリを作成する基本方法 Pythonでディレクトリ(フォルダ)を作成するには、まず os.path.exists() を使って、そのディレクトリがすでに存在するかどうかを確認します。存在しない場合のみ作成することで、エラーの発生を防ぐことができます。 import os if not os.path.exists(my_folder): os.makedirs(my_folder) os.makedirs() は、指定したパスの中間ディレクトリも必要に応じて自動的に作成してくれる便利な関数です。 EAFPスタイルでの書き方 Pythonでは「EAFP(Easi