python フォルダ内の複数ファイルの名前の一部を一括で変更したい
フォルダ内に
AAA_0.4_BBB.xvg
BBB_0.4_DDD.xvg
EEE_0.4_FFF.xvg
のようにファイルがあります。これを一括で
AAA_BBB.xvg
BBB_DDD.xvg
EEE_FFF.xvg
といったようにファイル名の一部を一括で削除したいと考えています
発生している問題・エラーメッセージ
for文での繰り返しが上手くいかず、下記のエラーが発生しています
解決方法をご教示いただけますと幸いです。
for (file, i) in (files1, range(len(files1))): ValueError: too many values to unpack (expected 2)
該当のソースコード
python
1import os 2import glob 3 4files1 = glob.glob('*xvg') 5 6print('置換前;', files1) 7 8i = 0 9 10for (file, i) in (files1, range(len(files1))): 11 file_replace = file.replace('0.4_', '') 12 rename = files1[i] 13 os.rename(rename, file_replace) 14 i += 1 15
試したこと
for文の書き方をいろいろと変えましたがうまくいきませんでした。
for file in files1:
for i range(len(files1)):
といった形でも実行したところ、二つ目のfor文を繰り返しが終了してから一つ目のfor文の繰り返し2回目に入るようで、意図した動作をしてくれませんでした(全部同じファイル名にしようとする)
補足情報(FW/ツールのバージョンなど)
Windows10でPython 3.9.6を使用しています
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/08/24 01:58