Python pathlibの基本的な使い方 – パスをオブジェクトとして操作する方法

 

pathlibとは

pathlibは、Python 3.4から標準ライブラリに追加されたファイルパスを扱うためのモジュールです。従来のos.pathと比べて、より直感的でオブジェクト指向的な書き方ができます。

pathlibの基本的な使い方

Pathオブジェクトの作成

from pathlib import Path

# 基本的なパスの作成
p = Path('.')
print(p)  # .

# ファイルパスの作成
file_path = Path('data/sample.txt')
print(file_path)  # data/sample.txt

# 絶対パスの作成
abs_path = Path('/home/user/documents')
print(abs_path)  # /home/user/documents

パスの結合

from pathlib import Path

# スラッシュ演算子でパスを結合
base_path = Path('data')
file_name = 'sample.txt'
full_path = base_path / file_name
print(full_path)  # data/sample.txt

# joindirメソッドを使った結合
path1 = Path('home')
path2 = path1 / 'user' / 'documents'
print(path2)  # home/user/documents

主要なPathlibメソッド

exists() – パスの存在確認

from pathlib import Path

p = Path('sample.txt')
if p.exists():
    print('ファイルが存在します')
else:
    print('ファイルが存在しません')

is_file()とis_dir() – ファイルとディレクトリの判定

from pathlib import Path

p = Path('data')
if p.is_file():
    print('ファイルです')
elif p.is_dir():
    print('ディレクトリです')

resolve() – 絶対パスの取得

from pathlib import Path

p = Path('.')
abs_p = p.resolve()
print(abs_p)  # 現在のディレクトリの絶対パス

os.pathとの比較

従来のos.pathを使った場合

import os

# パスの結合
path = os.path.join('data', 'sample.txt')
# ファイル存在確認
if os.path.exists(path):
    print('存在します')

pathlibを使った場合

from pathlib import Path

# パスの結合
path = Path('data') / 'sample.txt'
# ファイル存在確認
if path.exists():
    print('存在します')

まとめ

pathlibを使うことで、より読みやすく直感的なコードが書けます。特に複雑なパス操作が必要な場合は、pathlibの使用を強く推奨します。新しいPythonプロジェクトでは、os.pathの代わりにpathlibを積極的に活用しましょう。

■プロンプトだけでオリジナルアプリを開発・公開してみた!!

■AI時代の第一歩!「AI駆動開発コース」はじめました!

テックジム東京本校で先行開始。

■テックジム東京本校

「武田塾」のプログラミング版といえば「テックジム」。
講義動画なし、教科書なし。「進捗管理とコーチング」で効率学習。
より早く、より安く、しかも対面型のプログラミングスクールです。

<短期講習>5日で5万円の「Pythonミニキャンプ」開催中。

<月1開催>放送作家による映像ディレクター養成講座

<オンライン無料>ゼロから始めるPython爆速講座