Vielleicht Ihre Lösungen funktioniert mit ints, aber es Doesnt Arbeit für mich mit Wörterbüchern.
Auf der einen Seite hat remove() bei mir nicht funktioniert. Aber vielleicht funktioniert es mit Basic Types. Ich vermute, der Code unten ist auch der Weg, um Elemente aus der Liste der Objekte zu entfernen.
Andererseits hat auch die Funktion "del" nicht richtig funktioniert. In meinem Fall, bei Verwendung von Python 3.6: Wenn ich versuche, ein Element aus einer Liste in einem 'for'-Bucle mit dem 'del'-Befehl zu löschen, ändert Python den Index während des Prozesses und der Bucle stoppt vorzeitig vor der Zeit. Es funktioniert nur, wenn Sie Element für Element löschen in umgedreht bestellen. Auf diese Weise ändern Sie den Array-Index der ausstehenden Elemente nicht, wenn Sie ihn durchgehen
Dann werde ich gebraucht:
c = len(list)-1
for element in (reversed(list)):
if condition(element):
del list[c]
c -= 1
print(list)
wobei 'list' wie [{'key1':value1'},{'key2':value2}, {'key3':value3}, ...] ist
Sie können auch mehr pythonic mit enumerate tun:
for i, element in enumerate(reversed(list)):
if condition(element):
del list[(i+1)*-1]
print(list)