Короче говоря, мне нужно удалить несколько элементов из списка в соответствии с их индексами. Однако я не могу использовать pop, потому что он сдвигает индексы (без какой-либо неуклюжей системы компенсации). Есть ли способ одновременно удалить несколько элементов?
У меня есть алгоритм, который проходит через список, и если условия правильны, этот элемент удаляется с помощью метода pop. Проблема возникает, когда все это делается в цикле. После того, как поп сделан, список сокращается на единицу, вытесняя все значения на единицу. Таким образом, цикл выходит за пределы диапазона. Можно ли одновременно удалить несколько элементов или другое решение?
Пример моей проблемы:
L = ['a', 'b', 'c', 'd']
for i in range(len(L)):
print L
if L[i] == 'a' or L[i] == 'c':
L.pop(i)