Python & Pygame: Aktualisierung aller Elemente in einer Liste unter einer Schleife während der Iteration

Ich arbeite an einem Programm in Python und benutze Pygame. So sieht der Basiscode aus:

while 1:

   screen.blit(background, (0,0))
   for event in pygame.event.get():

      if event.type == QUIT:
        pygame.quit()
        sys.exit()

      if event.type == KEYDOWN and event.key == K_c:
        circle_create = True
        circle_list.append(Circle())

      if event.type == MOUSEBUTTONDOWN and circle_create == True:
        if clicks == 0:
            circle_list[i].center()
        clicks += 1


      if event.type == MOUSEMOTION and clicks == 1 and circle_create == True:
        circle_list[i].stretch()

   if circle_create == True:
     circle_list[i].draw_circle()

   if clicks == 2:
     clicks = 0
     i += 1
     circle_create = False    

 pygame.display.update()

Ich möchte, dass die Funktion des Objekts draw_circle () von der Schleife ständig aktualisiert wird, sodass der gezeichnete Kreis für alle Objekte in der Liste angezeigt wird. Da die Liste jedoch iteriert wird, werden das neu hinzugefügte Objekt und die Objekte aktualisiert bereits angehängte werden nicht aktualisiert.

Das Programm funktioniert, es zeichnet die Kreise nach Benutzereingaben, aber das Update-Problem ist das einzige Problem, das ich lösen muss. Gibt es eine Möglichkeit, alle Elemente in der Liste der Objekte zu haben, die von der while-Schleife aktualisiert werden? Ich habe es viele Tage lang versucht und konnte keine gute Lösung finden. Irgendwelche Ideen werden geschätzt. Vielen Dank

Antworten auf die Frage(3)

Ihre Antwort auf die Frage