アカデミック

【Pythonお悩み解決】ファイル名の一部を変えて保存したい。でも拡張子が邪魔。

この記事は, Pythonを利用して研究を行なっていく中で私がつまずいてしまったポイントをまとめていくものです。同じような状況で苦しんでいる方々の参考になれば嬉しいです。Pythonつまずきポイント集の目次は以下のページをご覧ください。

【超初心者お悩み解決】Pythonつまずきポイント記事まとめページ この記事は,Pythonを利用して研究を行なっていく中で私がつまずいてしまったポイントをまとめていくものです。同じような状況で苦しんで...

本記事で紹介する解決策がBestという保証はできません。正確な情報を発信するように心掛けていますが図らずも誤った情報を記載してしまう場合があります。もしご指摘等がありましたら,コメント欄またはお問い合わせページよりご連絡下さい。

環境

●Ubuntu 16.04
●Python 3.7.3
●conda 4.7.12
●pytorch 1.2.0

目的

あるファイルの一部を変えて「(元のファイル名)+(何か)+(拡張子)」のような形で保存したい。例えば「a-001.wav」というwavファイルにHPSSという打楽器音分離の手法をかけて「a-001-hpss.wav」と保存したい。

手法

「os.path.splitext」と「os.path.basename」をうまく使います。以下に実装例を示します。

import os

# 拡張子とそれ以外に分離
root, ext = os.path.splitext(wav_file)

# 一番最下層のファイル名だけを抽出
basename = os.path.basename(root)

# 以上を組み合わせて任意の名前を作る
insert_name = "_hpss"
wav_name = path_store + "/" + basename + insert_name + ext

COMMENT

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です