この記事では、Pythonのコード内からディレクトリを作成する方法を紹介します。
ソースコード内からディレクトリを1つ作成するには、os
モジュールのmkdir
関数を使います。また、末端ディレクトリを作成するために指定したパス通りに中間ディレクトリも再帰的に作成してくれるmakedirs
関数も用意されています。
それでは、それぞれ詳しく見ていきましょう!
パスを指定して作成する[mkdir関数]
os
モジュールのmkdir
関数を使うことでディレクトリを作成できます。
import os
os.mkdir(path, mode=0o777, *, dir_fd=None)
path
引数には、作成するディレクトリのパスを相対パス、または絶対パスで指定する- すでに同じパスのディレクトリが存在している場合は
FileExistsError
、パスが間違っている場合は、FileNotFoundError
が送出される
例としてデスクトップにディレクトリを作成してみる :
import os
# デスクトップのパス
desktop_path = '/Users/ユーザー名/Desktop'
# ディレクトリ名
dir_name = 'dir'
# パスの作成
dir_path = os.path.join(desktop_path, dir_name)
# ディレクトリの作成
os.mkdir(dir_path)
上記のコードをターミナルなどで実行してみてください。
画像のようにデスクトップに「dirディレクトリ」を作成することができました。
パスを指定して再帰的に作成する[makedirs関数]
先ほどの方法ではサブディレクトリを作成しようとすると2回同じようなコードを書く必要があります。それは面倒なので引数に指定したパス通りにディレクトリを作成してくれるos.makedirs
関数を使うと楽ちんです。
os
モジュールのmakedirs
関数は、パスで指定した末端ディレクトリとの間にある存在していないディレクトリもまとめて作成することができます。
import os
os.makedirs(name, mode=0o777, exist_ok=False)
name
引数に指定したパス通りに再帰的にディレクトリが作成されます。exist_ok
引数をTrue
にすることで同じパスのディレクトリが存在していたとしてもエラーを発生させないようにできます。(Python 3.2で追加)
例としてデスクトップにディレクトリとサブディレクトリを作成してみます:
import os
# デスクトップのパス
path = '/Users/ユーザー名/Desktop'
# デスクトップに作成するディレクトリ名
dir_name1 = 'dir'
# dirディレクトリ内に作成するサブディレクトリ名
dir_name2 = 'sub_dir'
# ディレクトリの作成
os.makedirs(os.path.join(path, dir_name1, dir_name2))
このコードを実行するとデスクトップに下の画像のようなディレクトリが作成されます。
「dirディレクトリ」内に「sub_dirディレクトリ」が作成されています。
まとめ
今回はソースコード内からディレクトリを作成する方法を解説しました。
コード内からディレクトリを操作することでログや設定ファイルを保存するディレクトリを外部に生成したりすることができます。
それでは今回の内容はここまでです。ではまたどこかで〜( ・∀・)ノ
Linkディレクトリを削除する方法