Pythonでのファイルパスの操作
メニューを表示するにはスワイプしてください
前の章では、ファイルパスを指定せずにルートディレクトリ内のファイルを操作しました。ここでは、このトピックをさらに深く掘り下げ、十分な知識を身につけます。
異なるオペレーティングシステムでのファイルパスの扱い
ファイルパスはオペレーティングシステムごとに大きく異なります。たとえば、Windows ではパス区切りにバックスラッシュ(\)を使用し、macOS や Linux ではスラッシュ(/)を使用します。Python では、これらの違いをシームレスに扱うために、主に os モジュールと pathlib モジュールが用意されています。
os モジュールの利用
os モジュールには、さまざまな OS 環境で信頼性の高いパス操作を行うためのユーティリティが含まれています。主な関数は以下の通りです:
os.path.join(): 複数のパス要素を適切に結合する関数;os.path.abspath(): 指定したパスの絶対パスを返す関数;os.path.basename(): パス名のベース名を返す関数;os.path.dirname(): パス名のディレクトリ名を返す関数;
例:
12345import os # Correctly joins parts of a file path according to the OS conventions file_path = os.path.join('my_dir', 'sub_dir', 'file.txt') print(file_path)
pathlib モジュールの利用
Python 3.4 で導入された pathlib は、ファイルシステムパスをオブジェクト指向で扱うためのモジュールです。ファイルシステムパスを一連のオブジェクトとしてカプセル化し、ファイルシステムへのアクセスを提供します。
12345from pathlib import Path # Creating a Path object that is agnostic to the OS p = Path('my_dir') / 'sub_dir' / 'file.txt' print(p)
Pythonでは、Windows上で操作する場合でも、ファイルパスにLinuxスタイルのスラッシュ(/)を使用可能。Pythonが自動的に処理するため、この目的で追加のライブラリを導入する必要はない。pathlibモジュールは、これらのパスを便利に操作するために主に利用される。毎回手動でパスを解析する代わりに、pathlibを使うことでパスをオブジェクトとして扱え、操作が簡単になりコードの可読性も向上する。
すべて明確でしたか?
フィードバックありがとうございます!
セクション 3. 章 4
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 3. 章 4