Переименовать файлы после записи в списке - PullRequest
0 голосов
/ 06 января 2020

Мне нужно систематически переименовывать несколько файлов. Итак, у меня есть список имен, в которые я хочу переименовать имена файлов. Папка состоит из wav файлов, имена которых имеют вид:

VP01.wav
VP02.wav
VP03.wav

Порядок в ID_list уже правильный приказ. Так что в основном я хочу, чтобы VP01 было 01_a, VP02 было 03_a и т. Д. 1018 *. Я пытался сделать это так:

ID_list = ['01_a', '03_a', '04_b', '01_b', '05_a', '04_a', '03_b']

import os
path = glob.glob('filepath\*.wav')
for item in path, ID_list:
    os.rename(item, item)

Но это дает мне:

TypeError: rename: src should be string, bytes or os.PathLike, not list

как ошибку. Файлы, которые я хочу изменить, являются wav файлами. Кто-нибудь знает, как это сделать?

1 Ответ

1 голос
/ 06 января 2020

Вот способ сделать:

from pathlib import Path

file_path = Path("path_containing_wav_files/")
path = file_path.glob('**/*.wav')

for en, x in enumerate(path):
    x.rename(ID_list[en] + '.wav')
...