パスからn番目のディレクトリ名を取得する方法


import os
def get_nth_directory_name(path, n):
    # パスをディレクトリ名で分割
    directories = path.split(os.path.sep)

    # リストの範囲を超えないようにnを調整
    n = min(n, len(directories) - 1)

    # n番目のディレクトリ名を返す
    return directories[n]
# 使用例
path = "/path/to/some/directory/"
n = 2
nth_directory_name = get_nth_directory_name(path, n)
print(nth_directory_name)

上記のコードでは、os.path.sepを使用してパスをディレクトリ名で分割します。split関数を使用することで、パス文字列をディレクトリごとに分割してリストに格納します。その後、指定したn番目のディレクトリ名を取得します。

この方法を使えば、任意のパスから指定した位置のディレクトリ名を取得することができます。また、osモジュールを使用することで、プラットフォームに依存しない方法でパスを操作することができます。