我有一个浮点数的列表,我想在指定的索引范围内增量删除 一组元素。像:从列表中增量删除元素
for j in range(beginIndex, endIndex+1):
print ("remove [%d] => val: %g" % (j, myList[j]))
del myList[j]
然而,因为我遍历同一个列表,索引(范围) 都不再有效了新的列表。 有没有人有关于如何正确删除元素 的建议?
最好的祝愿
我有一个浮点数的列表,我想在指定的索引范围内增量删除 一组元素。像:从列表中增量删除元素
for j in range(beginIndex, endIndex+1):
print ("remove [%d] => val: %g" % (j, myList[j]))
del myList[j]
然而,因为我遍历同一个列表,索引(范围) 都不再有效了新的列表。 有没有人有关于如何正确删除元素 的建议?
最好的祝愿
你真的需要incrementaly删除它们?
如果没有,你可以做到这一点是这样的:
del myList[beginIndex:endIndex+1]
这样的事情?
>>> list1 = [1,2,3,4,5,6]
>>> start, end = 2, 4
>>> list1[:start] + list1[end:]
[1, 2, 5, 6]
您可以从最终迭代到序列的开端:
for j in range(endIndex, beginIndex-1, -1):
print ("remove [%d] => val: %g" % (j, myList[j]))
del myList[j]