Python

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

この記事では、Python のソースコード内からディレクトリを作成する方法を紹介します。

ディレクトリを作成するには osモジュール の以下の関数を使います。

mkdir() 指定されたパスのディレクトリを作成する
makedirs() 指定したパス通り再帰的にディレクトリを作成する

それでは、それぞれ使い方を見ていきましょう。

パスを指定して作成する[mkdir関数]

osモジュール の mkdir関数 を使うことでディレクトリを作成できます。

import os

os.mkdir(パス)

引数には、作成するディレクトリのパスを指定します。パスは相対パスでも絶対パスでも指定することができます。

すでに同じパスのディレクトリが存在している場合はFileExistsError、パスが間違っている場合はFileNotFoundErrorが送出されます

サンプル

試しにデスクトップにディレクトリを作成してみましょう。

import os

# デスクトップのパス(使っているPCのデスクトップのパスを指定)
path = '/Users/ユーザー名/Desktop'

# ディレクトリ名
dir_name = 'dir'

# ディレクトリの作成
os.mkdir(os.path.join(path, dir_name))

これでデスクトップに dirディレクトリ が作成されました。

パスを指定して再帰的に作成する[makedirs関数]

先ほどの方法ではデスクトップにディレクトリを作成し、その中にサブディレクトリを作成しようとすると、2回同じようなコードを書く必要があります。

それは面倒なので osモジュール の makedirs関数 を使いましょう。makedirs関数 を使うことで 引数に指定したパス通りにディレクトリを作成してくれます。

書式

パスで指定した末端ディレクトリとの間にある存在していないディレクトリもまとめて作成することができます。

import os

os.makedirs(パス)

exist_ok引数 を True にすることで 同じパスのディレクトリが存在していたとしてもエラーを発生させないようにできます。(Python 3.2 で追加)

os.makedirs(path, exist_ok=True)

サンプル

試しに、デスクトップにディレクトリとサブディレクトリを作成してみます。

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ディレクトリを削除する方法