パイソン | os.path.join() メソッド

Os Path Module は、共通のパス名操作に使用される Python の OS モジュールのサブモジュールです。この記事では、os.path.join() とファイル パスの安全な処理について学びます。 Python OS

Python os.path.join() メソッドの構文

構文: os.path.join(パス, *パス)

パラメータ:

  • パス : ファイル システム パスを表すパスのようなオブジェクト。
  • *パス : ファイル システム パスを表すパスのようなオブジェクト。結合するパスのコンポーネントを表します。パスのようなオブジェクトは、パスを表す文字列またはバイト オブジェクトです。
  • 注記: 特殊な構文 *引数 Python の関数定義の (ここでは *paths) は、可変数の引数を関数に渡すために使用されます。

戻り値の型: このメソッドは、連結されたパス コンポーネントを表す文字列を返します。

Python の os.path.join() メソッド

os.path.join() Python のメソッドは、1 つ以上のパス コンポーネントをインテリジェントに結合します。このメソッドは、最後のパス コンポーネントを除く空でない各部分の後に、ディレクトリ区切り文字 (「/」) を 1 つだけ使用して、さまざまなパス コンポーネントを連結します。結合される最後のパス コンポーネントが空の場合は、ディレクトリ区切り文字 (「/」) が最後に追加されます。

パス コンポーネントが絶対パスを表す場合、結合された以前のコンポーネントはすべて破棄され、絶対パス コンポーネントから結合が続行されます。

os.path.join() 関数の例と使用例

以下は、ファイル パスを結合し、ファイル パスを安全に処理できるいくつかの例と使用例です。 パイソン あなた。

パスコンポーネントの連結

この例では、「os.path.join()」メソッドを使用してパス コンポーネントを連結し、有効なパスを効果的に構築します。コンポーネントを適切に結合することで、クロスプラットフォームの互換性が確保されます。

Python3




import> os> # Path> path> => '/home'> # Join various path components> print> (os.path.join(path,> 'User/Desktop'> ,> 'file.txt'> ))> # Path> path> => 'User/Documents'> # Join various path components> print> (os.path.join(path,> '/home'> ,> 'file.txt'> ))> # Path> path> => '/User'> # Join various path components> print> (os.path.join(path,> 'Downloads'> ,> 'file.txt'> ,> '/home'> ))>

出力

/home/User/Desktop/file.txt /home/file.txt /home 

ファイルの読み取りと書き込み

この例では、 os.path.join()> このメソッドは、ベース ディレクトリとファイル名を結合して完全なファイル パスを形成するために使用されます。構築されたパスは、次の名前のファイルの内容を読み取るために使用されます。 example.txt>

例.txt

techcodeview.com 

Python3




import> os> # Base directory and filename> base_dir> => '/home/user'> filename> => 'example.txt'> # Construct the full path> full_path> => os.path.join(base_dir, filename)> # Reading and writing files using the full path> with> open> (full_path,> 'r'> ) as> file> :> > content> => file> .read()> > print> (content)>

出力:

techcodeview.com 

ディレクトリ内のファイルの一覧表示

この例では、「os.path.join()」メソッドを使用して、現在の作業ディレクトリ内の各ファイルの絶対パスを生成します。完全なパスが出力されるので、ディレクトリ内のすべてのファイルの包括的なリストが可能になります。

Python3




import> os> # Current working directory> current_dir> => os.getcwd()> # List files in the current directory> files_in_dir> => os.listdir(current_dir)> # Iterate over files and print their full paths> for> file_name> in> files_in_dir:> > file_path> => os.path.join(current_dir, file_name)> > print> (file_path)>

出力

/home/guest/sandbox/1e914974-f313-477e-a710-2057a0037607.in /home/guest/sandbox/driver /home/guest/sandbox/Solution.py 

For ループを使用したパスの反復処理

この例では、ループ内で `os.path.join()` メソッドを使用して、リストされた各ファイル名の絶対パスを動的に作成します。構築されたパスは、それぞれのファイルの処理を示すために出力されます。

Python3




import> os> # List of file names> names> => [> 'file1.txt'> ,> 'file2.txt'> ,> 'file3.txt'> ]> # Iterate over file names and process each file> for> file_name> in> names:> > file_path> => os.path.join(> '/home/user'> , file_name)> > print> (f> 'Processing file: {file_path}'> )>

出力

Processing file: /home/user/file1.txt Processing file: /home/user/file2.txt Processing file: /home/user/file3.txt