Python 如何快速删除列表中多个变量的所有事件?
我有一张单子,是一个分开的句子。 例如:Python 如何快速删除列表中多个变量的所有事件?,python,list,variables,Python,List,Variables,我有一张单子,是一个分开的句子。 例如: ['Hello', 'My', 'name', 'is', 'Python', 'and', 'I', 'make', 'life', 'easy', 'is', 'and', 'I', 'is'] 我想一次性删除所有出现的'is','and'和'I' 我如何以最短的方式一次将它们全部取出? 如果我想一次去掉所有出现的5个变量呢?还是一次1000 我知道这可能非常难。以前没有人问过……没有,因为我想一次删除多个变量的所有匹配项。列表理解会一次删除所有
['Hello', 'My', 'name', 'is', 'Python', 'and', 'I',
'make', 'life', 'easy', 'is', 'and', 'I', 'is']
我想一次性删除所有出现的'is','and'和'I'
我如何以最短的方式一次将它们全部取出?
如果我想一次去掉所有出现的5个变量呢?还是一次1000
我知道这可能非常难。以前没有人问过……没有,因为我想一次删除多个变量的所有匹配项。列表理解会一次删除所有匹配项。是的,因为您可以/应该能够轻松地扩展重复问题的可接受答案,以检查多个内容。@martineau dup目标中没有任何地方可以进行字符串比较,特别是通过集合进行优化。所有答案都与整数有关。它们中的任何一个都不会删除多个值。特别是对于新程序员,您应该能够轻松地扩展。。。可能不行。问题的标题可能措词不当,还有更好的,但我不认为有人能回答这个问题。@TemporalWolf:stackoverflow可能是一个严厉的情妇。值得注意的是,黑名单是一套,而且有充分的理由。
In [150]: L = ['Hello', 'My', 'name', 'is', 'Python', 'and', 'I', 'make', 'life', 'easy', 'is', 'and', 'I', 'is']
In [151]: blacklist = {"I", "is", "and"}
In [152]: [i for i in L if i not in blacklist]
Out[152]: ['Hello', 'My', 'name', 'Python', 'make', 'life', 'easy']