概要
Python
でディレクトリが存在するかを確認する方法には、主にos
モジュールとpathlib
モジュールの2つがあります。どちらもディレクトリの存在確認に適しており、状況に応じて使い分けることができます。また、ディレクトリが存在しない場合には作成する方法や、エラーハンドリングについても見ていきます。
os.path
モジュールの使用
os.path.isdir()
を使うことで、特定のパスがディレクトリかどうかを確認できます。例えば、次のように使います。
import os
if os.path.isdir('/path/to/directory'):
print("ディレクトリが存在します")
else:
print("ディレクトリが存在しません")
一方、os.path.exists()
を使うと、ファイルかディレクトリのいずれかが存在するかを確認できます。
if os.path.exists('/path/to/directory'):
print("ファイルまたはディレクトリが存在します")
pathlib
モジュールの使用
Python
3.4以降では、pathlib
モジュールが導入され、オブジェクト指向的にファイルパスを操作できるようになりました。ディレクトリの存在確認は以下のように行えます。
from pathlib import Path
if Path('/path/to/directory').is_dir():
print("ディレクトリが存在します")
pathlib
は直感的で、可読性の高いコードが書けるため、Python
3.4以降の環境では推奨される方法です。
ディレクトリの作成
ディレクトリが存在しない場合、os.makedirs()
またはpathlib.Path.mkdir()
を使ってディレクトリを作成できます。
import os
os.makedirs('/path/to/directory', exist_ok=True)
または、
from pathlib import Path
Path('/path/to/directory').mkdir(parents=True, exist_ok=True)
これにより、親ディレクトリも含めて安全にディレクトリを作成できます。
まとめ
Python
でディレクトリが存在するかどうかを確認するためには、os
モジュールやpathlib
モジュールが使えます。それぞれの方法を理解し、適切に選択することで、効率的なファイルシステム操作が可能です。