- 794 名前:デフォルトの名無しさん mailto:sage [2017/04/02(日) 19:09:17.62 ID:f3S3avyq.net]
- >>772
for文の反復元となるnをループ内で操作しているから。 まず1回目のループでif条件に従い、0(0番目の要素)が削除される、すると1が0番目、2が1番目の要素に繰り上がる 2回目のループでfor文は1番目の要素を取り出すが、前回のループで各要素が繰り上がっており、1ではなく2が取り出される 解決策は配列を全スライス([:])でコピーするとか、条件のを削除ではなく 条件ではないのをfilter()とか新規配列に追加とかかな?(削除はコストも高い
|

|