Python 業務自動化 | ファイル・フォルダ自動化:基本操作 - フォルダ作成

Python Python
スポンサーリンク

Pythonで「フォルダ作成」を確実にマスターする

フォルダ作成は、業務自動化の中でも最も基本でありながら、実務で非常に重要な操作です。
「日付ごとのフォルダを自動生成する」「処理前に作業フォルダを作る」「バックアップ先フォルダを自動で用意する」──こうした作業はすべてフォルダ作成の応用です。

Pythonでは os.makedirs() を使うことで、初心者でも安全かつ確実にフォルダを作成できます。
ここでは、基本から実務テンプレートまで、丁寧にかみ砕いて解説します。


フォルダ作成の基本:os.mkdir と os.makedirs

os.mkdir は「1階層だけ」作れる

os.mkdir() は、指定したフォルダを1つだけ作成します。

import os

os.mkdir("data")
Python

ただし、親フォルダが存在しない場合はエラーになります。

例えば "backup/2024" を作ろうとしても、backup が存在しなければ失敗します。

この制限のため、実務では os.mkdir() よりも os.makedirs() が圧倒的に使われます。


実務で必須:os.makedirs の強力さを深掘りする

os.makedirs は「必要な階層をすべて作る」

os.makedirs() は、途中のフォルダが存在しなくても、まとめて作成してくれます。

import os

os.makedirs("backup/2024/03/14")
Python

この一行で、存在しない階層をすべて作ってくれます。

exist_ok=True の重要性

os.makedirs() を使うとき、実務では必ず exist_ok=True を付けます。

os.makedirs("backup", exist_ok=True)
Python

これを付けると、フォルダがすでに存在していてもエラーになりません。

業務自動化では「毎回同じフォルダを作る」ことが多いため、
exist_ok=True はほぼ必須の安全装置です。


例題①:日付フォルダを自動生成する

シナリオ

毎日生成されるレポートを、日付ごとのフォルダに保存したい。
例えば次のような構造を自動で作りたい。

reports/
 └── 2024-03-14/

コード例

import os
from datetime import date

today = date.today().strftime("%Y-%m-%d")
folder = os.path.join("reports", today)

os.makedirs(folder, exist_ok=True)

print("フォルダを作成しました:", folder)
Python

このテンプレートは、バックアップ・ログ管理・レポート整理など、あらゆる業務で使えます。


例題②:処理用の作業フォルダを自動で用意する

シナリオ

データ処理の前に「作業フォルダ」を作りたい。
処理が終わったら削除する前提の一時フォルダです。

コード例

import os

work_dir = "work/temp"

os.makedirs(work_dir, exist_ok=True)

print("作業フォルダを準備しました:", work_dir)
Python

このように、処理の前にフォルダを確実に用意しておくことで、
「フォルダがなくてエラーになった」という事故を防げます。


例題③:ファイル移動・コピーと組み合わせる実務テンプレート

シナリオ

ファイルをバックアップフォルダにコピーする前に、
バックアップ先フォルダを自動で作成したい。

コード例

import os
import shutil

src = "data/report.csv"
dst_dir = "backup"
dst = os.path.join(dst_dir, "report.csv")

os.makedirs(dst_dir, exist_ok=True)
shutil.copy(src, dst)

print("バックアップ完了:", dst)
Python

フォルダ作成とファイル操作はセットで使うことが多いため、
このテンプレートは実務で非常に役立ちます。


フォルダ作成を安全にするための考え方を深掘りする

フォルダ作成は「前準備」であり「エラー防止策」

業務自動化では、フォルダ作成は単なる作業ではなく、
「後続処理を安全に実行するための準備」です。

フォルダがないとファイルコピー・移動・保存がすべて失敗します。
そのため、次のような考え方が重要です。

フォルダは処理の最初に作る
存在していても問題ないように exist_ok=True を付ける
パスは os.path.join() で組み立てる
日付やバージョンを使って整理しやすい構造にする

これらを意識するだけで、スクリプトの安定性が大きく向上します。


まとめ:フォルダ作成は業務自動化の“土台”

フォルダ作成は、業務自動化の中で最も基本的でありながら、
すべての処理の土台となる重要な操作です。

フォルダがなければファイル操作は始まりません。
だからこそ、次のポイントを確実に押さえておくことが大切です。

os.makedirs() を使う
exist_ok=True で安全にする
パスは os.path.join() で組み立てる
必要な階層をまとめて作れることを理解する

もしよければ、あなたが普段使っている業務フォルダ構造を思い浮かべてみてください。
そのフォルダ作成は、今日紹介したテンプレートで確実に自動化できます。

タイトルとURLをコピーしました