Pythonで再帰的にディレクトリを作成するには?os.makedirsの使い方を解説
再帰的にディレクトリを作成する方法
Pythonで、まだ存在しない親ディレクトリも含めてまとめてフォルダを作成したい場合は、標準ライブラリの os.makedirs() を使用します。作成したいパスを引数として渡すだけで、途中階層のディレクトリがすべて自動的に生成されます。
import os
os.makedirs('my_folder/another/folder', exists_ok=True)
このコードでは、「my_folder」→「another」→「folder」というように、必要なディレクトリが一括で作成されます。
exists_ok=True を指定する理由
引数 exists_ok=True を指定すると、対象のディレクトリがすでに存在していてもエラーにならず、そのまま処理を続行できます。デフォルト値は False であり、指定しないまま同じパスに対して再度実行すると FileExistsError が発生します。既存フォルダの存在を許可したい場合は、必ず True を設定しましょう。
エラー処理を加えたサンプルコード
import os
try:
os.makedirs('my_folder/another/folder')
print('ディレクトリを作成しました')
except FileExistsError:
print('ディレクトリはすでに存在します')
pathlib を使った代替方法(Python 3.5 以降)
from pathlib import Path
Path('my_folder/another/folder').mkdir(parents=True, exist_ok=True)
parents=True が再帰的な作成を、exist_ok=True が既存ディレクトリの許可を意味します。近年のコードではより直感的な pathlib が好まれることも多く、用途に応じて使い分けるとよいでしょう。
-
PythonでPowerPointファイルを自動作成する方法!python-pptxの基本を徹底解説
はじめに誰もが一度はPowerPointのプレゼンテーション資料を作成した経験があるのではないでしょうか。多くの場合、Microsoft PowerPointやGoogleスライドといったGUIツールを使うことが多いでしょう。しかし、ライセンスを持っていなかったり、インターネット環境にアクセスできなかったりすることもあります。あるいは、「プログラマーらしく」コードで自動生成したいと考える方もいるはずです。ご安心ください。そんなときこそPythonの出番です!この記事では、Pythonを使ってPowerPointファイルを作成し、コンテンツを追加する方法を解説します。それでは早速始めましょう!準
-
Pythonとtkinterでストップウォッチを作成する方法【サンプルコード付き】
ストップウォッチは、ある出来事から次の出来事までの時間間隔を測定するための道具で、一般的に数秒〜数分程度の計測に使用されます。スポーツのタイム計測をはじめ、産業現場で熱流量や電流の変化を測るなど、幅広い場面で活用されています。 Pythonでは標準ライブラリのtkinterを使えば、GUIを備えたストップウォッチを簡単に自作できます。本記事で紹介するのは、スタート(Start)・ストップ(Stop)・リセット(Reset)の3つの操作ボタンを備えたウィンドウアプリケーションです。 ポイントは「after()」メソッド このプログラムの核となるのが、tkinterのウィジェットが持つafter