我应该删除所有大于 5 的奇数,然后将所有偶数除以 2。这应该作为一个迭代过程发生,即某种循环。
A = [12, 8, 9, 2, 18, 3, 15, 19, 6, 12, 15, 3, 20, 3, 13, 6, 1, 20, 13, 14]
for i in A:
if i%2 == 1 and i>5:
A.remove(i)
else: pass
print(A)
for i in A:
if i%2 == 0:
A[A.index(i)] /= 2
else: pass
print(A)
在第一个 for 循环中,19 不会被删除,我不知道为什么。如果我将其他赔率之一(例如 15)换成 19,那么它就会被移除。在第二个 for 循环中,当我将第一个数字 12 除以 2 时,它变为 3。如果我将 10 写为第一个数字,它变为 5。列表中后面的 12 变为 6。
为什么会发生这种情况,我该怎么做才能让它发挥作用?