に似たものがあります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 に答える