に似たものがありますos.path.dirname(path)
が、パスライブラリにありますか?
質問する
81774 次
2 に答える
176
parents
特定のパスのすべての親ディレクトリを含む要素があるようです。たとえば、次のように開始する場合:
>>> import pathlib
>>> p = pathlib.Path('/path/to/my/file')
次にp.parents[0]
、以下を含むディレクトリですfile
。
>>> p.parents[0]
PosixPath('/path/to/my')
...そしてp.parents[1]
次のディレクトリになります:
>>> p.parents[1]
PosixPath('/path/to')
等。
p.parent
を求める別の方法ですp.parents[0]
。a を文字列に変換しPath
て、期待どおりの結果を得ることができます。
>>> str(p.parent)
'/path/to/my'
またPath
、メソッドを使用し.absolute()
て絶対パスを取得することもできます。
>>> os.chdir('/etc')
>>> p = pathlib.Path('../relative/path')
>>> str(p.parent)
'../relative'
>>> str(p.parent.absolute())
'/etc/../relative'
末尾にスラッシュがあるパスは別の方法で処理するos.path.dirname
ことに注意してください。pathlib
のpathlib
親some/path/
はsome
:
>>> p = pathlib.Path('some/path/')
>>> p.parent
PosixPath('some')
返品中:os.path.dirname
_some/path/
some/path
>>> os.path.dirname('some/path/')
'some/path'
于 2016-02-18T19:02:56.457 に答える