首页 > 解决方案 > 如何一次从python列表中删除多个元素?

问题描述

假设我有a=[1,0,1,0,1,1,1,0,0,0,0]

我想同时删除所有的零。我可以这样做吗?

标签: pythonpython-3.x

解决方案


有多种解决方案可以做到这一点。由于已经解释了列表理解,我正在尝试不同的东西。使用 lambda 函数

Python 2.x

>>> x = [1,0,1,0,1,1,1,0,0,0,0]
>>> filter(lambda a: a != 0, x)
[1, 1, 1, 1, 1]

Python 3.x 或更高版本

>>> x = [1,0,1,0,1,1,1,0,0,0,0]
>>> list(filter((0).__ne__, x))
[1, 1, 1, 1, 1]

或者

>>> x = [1,0,1,0,1,1,1,0,0,0,0]
>>> list(filter(lambda a: a != 0, x))
[1, 1, 1, 1, 1]

希望能帮助到你 :)


推荐阅读