迭代两个列表,检查匹配然后重命名

时间:2017-02-05 14:08:19

标签: python loops match rename

好的,所以我有两个清单;一个是歌曲标题列表,另一个是通过运行os.listdir()生成的文件列表,这将是歌曲mp3文件。

已更新

songs = ['The Prediction', 'Life We Chose', 'Nastradamus', 'Some of Us Have Angels', 'Project Windows', 'Come Get Me', "Shoot 'em Up", 'Last Words', 'Family', 'God Love Us', 'Quiet Niggas', 'Big Girl', 'New World', 'You Owe Me', 'The Outcome']

每首歌都是unicode

filenames = ['Nas - Big Girl.mp3', 'Nas - Come Get Me.mp3', 'Nas - God Love Us.mp3', 'Nas - Life We Chose.mp3', 'Nas - Nastradamus.mp3', 'Nas - New World.mp3', "Nas - Shoot 'Em Up.mp3", 'Nas - Some of Us Have Angels.mp3', 'Nas - The Outcome.mp3', 'Nas - The Prediction.mp3', 'Nas Feat. Bravehearts - Quiet Niggas.mp3', 'Nas Feat. Ginuwine - You Owe Me.mp3', 'Nas Feat. Mobb Deep - Family.mp3', 'Nas Feat. Nashawn - Last Words.mp3', 'Nas Feat. Ronald Isley - Project Windows.mp3']

每个文件名都是一个字符串

我希望能够查看歌曲列表,如果歌曲列表中的一个项目在文件名列表中匹配,则将文件重命名为歌曲的文件。

这有意义吗?

1 个答案:

答案 0 :(得分:1)

基本上它看起来像这样:

import os

for song in songs:
    for filename in filenames:
        if song.lower() in filename.lower():  # lower() just in case
            os.rename(filename, song + '.mp3')

如果您还有其他需求,请询问。