📝

pathlibのjoinを使わずパスを追加する時に拡張子を固定したい

2023/08/29に公開

https://qiita.com/items/7c170163c7c9f1d19516


お詫び

Qiitaの元記事にて、区切り線を「---」で書いている場所があり、これがZennの記法に干渉して一部うまく表示できない記事がある事を認識しています。
全ての記事を精査しきれていないため、お手数ですがお見かけの際は教えていただけると大変喜びます。


こんなマニアックな使い方をする人がいるか分からないけど、備忘録

from pathlib import Path

path = Path('任意のパス')
dirname = path.parent  #フルパスが欲しい場合はpath.resolve().parentでも取れる
filename = path.stem  #拡張子を除いたファイル名を取得

Path(dirname) / '{}.ext'.format(filename)  #.extはいい感じに

説明用にdirnameやfilenameにPathを使っているけど、実際はstrを想定。
こんな面倒な事をしなくてもいいはずなんだけど、方法が見つからなかった。

参考

<a href="https://docs.python.jp/3/library/pathlib.html">pathlib — オブジェクト指向のファイルシステムパス(Python.org)</a>

読了後いいね!をお願いします。

どれだけの方に読んでもらっているか知りたいので、お手数をおかけしますがご協力いただけると嬉しいです。

GitHubで編集を提案

Discussion