在 python 中,我想从列表中删除任何包含在所谓的“黑名单”中找到的子字符串的字符串。
例如,假设列表 A 如下:
A = [ 'cat', 'doXXXg', 'monkey', 'hoBBBrse', 'fish', 'snake']
列表 B 是:
B = ['XXX', 'BBB']
我怎样才能得到列表 C:
C = [ 'cat', 'monkey', 'fish', 'snake']
我试过正则表达式和列表理解的各种组合,但我似乎无法让它工作。
请您参考如下方法:
>>> A = [ 'cat', 'doXXXg', 'monkey', 'hoBBBrse', 'fish', 'snake']
>>> B = ['XXX', 'BBB']
下面的列表理解将起作用
>>> [word for word in A if not any(bad in word for bad in B)]
['cat', 'monkey', 'fish', 'snake']
