从列表中删除所有出现的值
虽然Python的remove()方法允许删除单个值的出现从列表中,有时可能需要删除所有出现的该值。以下是实现此目的的指南:
函数方法:
在 Python 中,内置的 filter() 函数提供了一种从列表中删除特定元素的简单方法基于给定的条件。通过使用 lambda 表达式或手动比较,我们可以过滤掉所有出现的目标值:
# Python 3.x >>> x = [1, 2, 3, 2, 2, 2, 3, 4] >>> list(filter((2).__ne__, x)) [1, 3, 3, 4]
此过滤并返回一个包含不等于删除目标 (2) 的元素的新列表,有效删除所有出现的 2。
或者:
>>> list(filter(lambda a: a != 2, x)) [1, 3, 3, 4]
这里,lambda 表达式直接比较每个元素为 2,如果不相等则返回 True,过滤掉目标值。
对于 Python 2.x,过滤函数返回一个迭代器:
# Python 2.x >>> filter(lambda a: a != 2, x) [1, 3, 3, 4]
在任一 Python 版本中, result 是一个列表或迭代器,包含满足过滤条件的元素,有效地从原始列表中排除目标值。
以上是如何从 Python 列表中删除某个值的所有实例?的详细内容。更多信息请关注PHP中文网其他相关文章!