前提
Windowsを使っている初心者です。Pythonで実行したいと考えています。
実現したいこと
複数ディレクトリにある同名ファイルをそれぞれ一括で同じ名前に変更したいと考えています。
例えば、それぞれのディレクトリにある「A.png」を一括で「あ.png」、「B.png」を「い.png」のようにしたいです。
ファイル名は
・連番・日付は不要。
・変更後の名前は日々変わるので都度入力したい。
です。
ディレクトリ構造
ファイル名変更.ipynb
test1
├ A.png
├ B.png
├ C.png
test2
├ A.png
├ B.png
├ C.png
test3
├ A.png
├ B.png
├ C.png
この構造のものが仕事で日々量産にされている状況です。
該当のソースコード
Python
1import glob 2import os 3 4path = './*/*.png' 5flist = glob.glob(path) 6for file in flist: 7 os.rename(file, './*/あ' + '.png')
ご回答にてヒントをいただき再度チャレンジして失敗したもの。
Python
1import glob 2import os 3 4path = './*/*.png' 5flist = glob.glob(path) 6old_names = ['A', 'B', 'C'] 7new_names = ['あ', 'い', 'う'] 8 9for old_name, new_name in zip(old_names, new_names): 10 flist = flist.replace(old_name, new_name) 11print(flist)
発生している問題・エラーメッセージ
OSError Traceback (most recent call last) Cell In [38], line 10 7 flist = glob.glob(path) 9 for file in flist: ---> 10 os.rename(file, './*/あ' + '.png') 13 list = glob.glob(path) OSError: [WinError 123] ファイル名、ディレクトリ名、またはボリューム ラベルの構文が間違っています。: '.\\test1\\A.png' -> './*/あ.png'
ひとまずA.pngからあ.pngだけ変えてみようとした時点でひっかかってしまいました。
初心者ゆえめちゃくちゃなことをしてるかもしれません。
実現したいことができていれば、このコードでなくても問題ありません。
何卒アドバイスをよろしくお願いいたします。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/10/02 11:35 編集
2022/10/02 11:51
2022/10/02 12:22