检测并将零移动到列表的末尾

时间:2017-01-22 15:23:00

标签: python list

我很难解释为什么下面的代码没有正确弹出并扩展它标识的每个零的列表。

def move_zeros(array):
    array.extend([array.pop(i) for i,x in enumerate(array) if x != 0 and x != False])
    return array

我回复的类似帖子: How to move zeros to the end of a list [closed]

1 个答案:

答案 0 :(得分:3)

您没有得到适当结果的原因是因为您遍历数组并同时更改其元素。

这是不好的做法,你应该使用另一个list \ variable来实现你的目标。