我是python的新手,在编写程序来转换二进制代码时,我发现列表有点问题。 我列出了“ z”:
z = [0, 0, 4, 8, 0, 32]
我想得到这个:
z = [4, 8, 32]
所以我做到了:
y = 0
for i in z:
if z[y] == 0:
z.remove(z[y])
y = y + 1
elif z[y] != 0:
y = y + 1
print(z)
但这不起作用,因为我得到了
z = [4, 8, 0, 32]
我该怎么办?
答案 0 :(得分:4)
您可以使用列表推导根据您的条件过滤掉元素
>>> z = [0, 0, 4, 8, 0, 32]
>>> [num for num in z if num != 0]
[4, 8, 32]