Python PR

【Python】ディレクトリを作成する方法

記事内に商品プロモーションを含む場合があります

この記事では、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ディレクトリを削除する方法