Python 2.7 löst ValueError: list.remove (x): x nicht in Liste aus

Jedes Mal, wenn ich dieses Programm ausführe, erhalte ich folgende Fehlermeldung:

ValueError: list.remove(x): x not in list

Ich versuche, die Gesundheit eines einzelnen Außerirdischen zu senken, wenn er von einem Blitz getroffen wird. Dieser einzelne Alien sollte auch zerstört werden, wenn seine Gesundheit ist<= 0. Ebenso würde auch der Riegel zerstört. Hier ist mein Code:

def manage_collide(bolts, aliens):
    # Check if a bolt collides with any alien(s)
    for b in bolts:
        for a in aliens:
            if b['rect'].colliderect(a['rect']):
                for a in aliens:
                    a['health'] -= 1
                    bolts.remove(b)
                    if a['health'] == 0:
                        aliens.remove(a)
    # Return bolts, aliens dictionaries
    return bolts, aliens

DasValueError passiert auf der Liniealiens.remove(a). Nur um zu verdeutlichen, sowohl diealiens undbolts sind Listen von Wörterbüchern.

Was mache ich falsch?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage