出力ディレクトリの準備 (os.mkdir)

処理済みデータを出力するときに、保存先のディレクトリを準備しておく必要があります。簡単に言うと、以下の2ステップの処理を行うことです。

  • 保存先のディレクトリが存在するかを確認
  • もしもなかったら作成する

pythonの標準ライブラリの「os」で簡単に実装できるのですが、ちょいちょい混乱することがあるので、メモとして残しておくことにします。

ディレクトリの存在確認

対象のディレクトリがあるかどうかは、os.path.exists()で確認できます。

import os

print(os.path.exists('target_dir'))

戻り値は、True(ディレクトリがある場合)もしくはFalse(ディレクトリがない場合)のどちらかです。

ディレクトリの作成

ディレクトリの作成コマンドは2種類あります。

# parent_dirが存在しない場合はエラー
os.mkdir('parent_dir/target_dir')

# parent_dirが存在しない場合は、parent_dirも含めて作成
os.makedirs('parent_dir/target_dir')

makedirsを使ったほうが楽ちんですが、parent_dirの指定が間違っていた場合に意図しない場所にガンガン保存してしまう可能性がありますので、どちらを使うかは時と場合によりけりという感じでしょうか。

ということで、

ディレクトリがない場合に新規作成する

のは、以下のコードで実現できます。

if not os.path.exists('target_dir'):
    os.mkdir('target_dir')   #あるいは、os.path.makedirs('target_dir')

ググってしまえばすぐに出てくる情報ですが、よく使う処理なので覚えてしまったほうがコーディングに手間取らずにすみます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です