蟒蛇。如何从Python中的列表中删除零

时间:2018-04-23 05:07:27

标签: python

X = [0,5,0,0,3,1,15,0,12]

for value in range(0,len(X)):

    if X[value] <= 0:
        del X[value]
        print(X)
print(X)

我运行代码但是我得到一个错误,说明列表超出了索引范围。 有人可以帮我解决如何纠正这个错误

2 个答案:

答案 0 :(得分:1)

>>> X = [0,5,0,0,3,1,15,0,12]
>>> list(filter(lambda num: num != 0, X))
[5, 3, 1, 15, 12]

答案 1 :(得分:1)

尝试列表理解。

X = [0,5,0,0,3,1,15,0,12]
X = [i for i in X if i != 0]