检查字符串中的id是否存在于其他列表中

2024-10-03 15:30:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我是python新手,我真的需要你的帮助

我有两份清单:

  1. 包含mp3文件名的列表(mp3list):

"Artist1 - MySongName_id11111.mp3

"Artist2 - SongName_id2231.mp3

"Artist3 - SongWhatever_id1623.mp3

  1. 带有ID的列表:

11111

2231

1623

4523

对于mp3列表中的每个项目,我想检查mp3文件名是否包含第二个列表中的id

例如。 如果Artist1-MySongName_id11111.mp3包含第二个列表中的11111,那么请执行一些操作


Tags: id列表文件名mp3新手songnameartist3artist1
3条回答

您可以使用python的re模块从歌曲名称中提取数字

import re
for i in list_of_mp3:
    replaced_string = re.sub(r'.+id', '', i)[:-4]
    if replaced_string in idx:
        print(f'{i} is in idx')

简单循环第一个列表,并生成一些条件和拆分字符串

    for i in artists:
        if int(i.split("id", 1)[1][:-4]) in idlist:
            # Do Any You Want
for i in ids:
  for name in mp3list:
    if str(i) in name:
      # do something

注意,如果同一个名称中碰巧有多个ID,那么它将do something使用两次;
我不确定这是否是你想要的

相关问题 更多 >