如何在Python中删除列表中所有出现的一个数字

时间:2017-11-14 22:13:44

标签: python

刚加入提出这个问题,因为我无法在谷歌的生活中找到它。

说我有一个列表x = [1,1,1,2,3,3,4,5,5,5,6,7]

如何在不删除索引的情况下删除号码1的所有实例?

尝试del& remove但似乎无法理解它。

基本上我正在做的是计算一个数字的所有出现次数,然后将其从我的列表中删除。

PS。无法使用:Remove all occurrences of a value from a list?因为lambda未涵盖在我们的课程中。

我不是在寻找代码审查,所以忽略我的一些方法,只是想知道我是否可以这样做。

编辑:谢谢大家,设法得到我所追求的并完成我的代码。我已经把我的代码拿出来以防我不允许在这里发布它。

2 个答案:

答案 0 :(得分:4)

只需使用列表理解:

x = [1,1,1,2,3,3,4,5,5,5,6,7]
x = [i for i in x if i != 1]

输出:

[2, 3, 3, 4, 5, 5, 5, 6, 7]

答案 1 :(得分:2)

列出对救援的理解。

x = [v for v in x if v != 1]