Python で親ディレクトリを取得する
-
Python で親ディレクトリを取得するには、
pathlib
モジュールのpath.parent()
メソッドを使用する -
os
モジュールのpardir()
メソッドを用いた Python での親ディレクトリの取得 -
Python で
os
モジュールのdirname()
メソッドを用いて親ディレクトリを取得する
このチュートリアルでは、Python でパスの親ディレクトリを取得するための様々な方法を説明します。親ディレクトリとは、与えられたディレクトリやファイルよりも上位にあるディレクトリのことです。例えば、パス C:\folder\subfolder\myfile.txt
の親ディレクトリは C:\folder\subfolder
となります。ルートディレクトリ以外の全てのディレクトリは親ディレクトリを持っています。
Python で親ディレクトリを取得するには、pathlib
モジュールの path.parent()
メソッドを使用する
path.parent()
メソッドはその名の通り、引数として渡されたパスの親ディレクトリを文字列の形で返します。したがって、パスの親ディレクトリを取得するには、パスの文字列を pathlib
モジュールの path.parent()
メソッドに渡す必要があります。
以下の例では、path.parent()
を用いて Python でパスの親ディレクトリを取得する方法を示します。
from pathlib import Path
path1 = Path(r"C:\folder\subfolder\myfile.txt")
path2 = Path(r"C:\Myfile.txt")
print(path1.parent)
print(path2.parent)
出力:
C:\folder\subfolder
C:\
os
モジュールの pardir()
メソッドを用いた Python での親ディレクトリの取得
os.pardir
は親ディレクトリを参照する定数文字列です。Windows と POSIX OS の場合は '..'
であり、macOS の場合は '::'
です。
与えられたパスと os.path.join()
メソッドで os.pardir
を組み合わせると、与えられたディレクトリの親ディレクトリを取得することができます。
以下の例では、os
モジュールの os.pardir
と path.join()
メソッドを使ってパスの親ディレクトリを取得する方法を示します。
import os.path
path1 = r"C:\folder\subfolder\myfile.txt"
path2 = r"C:\Myfile.txt"
print(os.path.abspath(os.path.join(path1, os.pardir)))
print(os.path.abspath(os.path.join(path2, os.pardir)))
出力:
C:\folder\subfolder
C:\
上述したように、OS が Windows や POSIX の場合は os.pardir
を '..'
に置き換えても同じ結果が得られます。
import os.path
path1 = r"C:\folder\subfolder\myfile.txt"
path2 = r"C:\Myfile.txt"
print(os.path.abspath(os.path.join(path1, "..")))
print(os.path.abspath(os.path.join(path2, "..")))
出力:
C:\folder\subfolder
C:\
Python で os
モジュールの dirname()
メソッドを用いて親ディレクトリを取得する
モジュールの os
の dirname()
メソッドはパス文字列を入力として受け取り、親ディレクトリを出力として返します。
以下の例では、dirname()
を用いてパスの親ディレクトリを取得する方法を示します。
import os.path
path1 = Path(r"C:\folder\subfolder\myfile.txt")
path2 = Path(r"C:\Myfile.txt")
print(os.path.dirname(path1))
print(os.path.dirname(path2))
出力:
C:\folder\subfolder
C:
関連記事 - Python Directory
- Python のホーム ディレクトリの取得
- Python のディレクトリとサブディレクトリにあるすべてのファイルを一覧表示する
- Python でパスからディレクトリを取得
- Python のフォルダ内の各ファイルに対してコマンドを実行する
- Python でサブディレクトリを一覧表示する
- Python でディレクトリ内のすべてのファイルを開く