python列表操作,用于比较部分元素和非完整元素
我有两个列表,我只想处理部分不匹配的元素 ListA=['CAT.txt'、'CAT.txt.ext'、'DOG.txt'、'DOG.txt.ext'、'TIGER.txt.ext',TIGER.txt'] ListB=['CAT_NEW.txt'、'CAT_NEW.txt.ext'、'TIGER_NEW.txt'、'TIGER_NEW.txt.ext'] 列表B是带有“\u NEW”的列表a的子集 我想要的输出:ListC=['DOG.txt','DOG.txt.ext'] 这是我提出的另一个问题的解决方法:。已检查多个线程,但无法在上拆分.txt.ext 我想如果我分割了输入列表,我就可以在不检查日志文件的情况下实现python列表操作,用于比较部分元素和非完整元素,python,list,Python,List,我有两个列表,我只想处理部分不匹配的元素 ListA=['CAT.txt'、'CAT.txt.ext'、'DOG.txt'、'DOG.txt.ext'、'TIGER.txt.ext',TIGER.txt'] ListB=['CAT_NEW.txt'、'CAT_NEW.txt.ext'、'TIGER_NEW.txt'、'TIGER_NEW.txt.ext'] 列表B是带有“\u NEW”的列表a的子集 我想要的输出:ListC=['DOG.txt','DOG.txt.ext'] 这是我提出的另一个
我选中此选项:从列表B中删除字符串“\u NEW”,并使用set操作:
In [1]: ListA = ['CAT.txt','CAT.txt.ext','DOG.txt','DOG.txt.ext','TIGER.txt.ext','TIGER.txt']
In [2]: ListB = ['CAT_NEW.txt','CAT_NEW.txt.ext', 'TIGER_NEW.txt', 'TIGER_NEW.txt.ext']
In [3]: lb= [ s.replace("_NEW","") for s in ListB ]
In [4]: lb
Out[4]: ['CAT.txt', 'CAT.txt.ext', 'TIGER.txt', 'TIGER.txt.ext']
In [5]: list(set(ListA)-set(lb))
Out[5]: ['DOG.txt', 'DOG.txt.ext']