2017-01-22 3 views
-2

私は、以下のコードが正しくポップしないことと、それが識別するそれぞれのゼロについてリストを拡張する理由をパズルしています。リストの終わりまでゼロを検出して移動する

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]

+2

反復処理中の配列は変更しないでください。 – spectras

答えて

3

理由があります。

これは悪いことですが、目標を達成するために別のリスト\変数を使用する必要があります。

関連する問題