我想从列表中删除2的倍数。我该怎么做?你知道吗
a = list(range(1, 11))
print(a)
for ele in a:
if ele % 2 == 0:
a.pop(ele)
print(a)
在条件之前,a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
在条件之后,我期望a = [1, 3, 5, 7, 9]
但是我得到了这个错误IndexError: pop index out of range
我如何得到2的各种倍数的索引来弹出它们??
我是个初学者。你知道吗
Tags:
如果您在正在迭代的列表上使用
pop
,那么您正在修改该列表,并且会遇到类似这样的问题,更好的方法可能是创建一个新列表,并将奇数元素放入该列表中。另外,在使用列表的值时使用
pop
,而不是在索引中使用它,这是不正确的。(https://docs.python.org/3/tutorial/datastructures.html#more-on-lists)相关问题 更多 >
编程相关推荐