Pygame, move a square on the screen, but can not erase the previous movements
<p>This is my first post in StackOverflow, hope you guys can help a newbie programmer. It's Pygame Python simple ask.</p>

<p>I am trying to move a square on the screen, but can not erase the previous movements.</p>

<pre><code>import pygame

pygame.init()
screen = pygame.display.set_mode((400,300))
pygame.display.set_caption("shield hacking")
JogoAtivo = True
GAME_BEGIN = False
# Speed in pixels per frame
x_speed = 0
y_speed = 0
cordX = 10
cordY = 100


def desenha():
    quadrado = pygame.Rect(cordX, cordY ,50, 52)

    pygame.draw.rect(screen, (255, 0, 0), quadrado)
    pygame.display.flip()



while JogoAtivo:
    for evento in pygame.event.get():
        print(evento);
    #verifica se o evento que veio eh para fechar a janela
        if evento.type == pygame.QUIT:
               JogoAtivo = False
               pygame.quit();
        if evento.type == pygame.KEYDOWN:     
            if evento.key == pygame.K_SPACE:
                   print('GAME BEGIN')
                   desenha()
                   GAME_BEGIN = True;
            if evento.key == pygame.K_LEFT and GAME_BEGIN:   
                   speedX=-3
                   cordX+=speedX
                   desenha()


            if evento.key == pygame.K_RIGHT and GAME_BEGIN:
                   speedX=3
                   cordX+=speedX
                   desenha()   
</code></pre>

<p>You have to draw over the previous image. Easiest is to fill the screen with a background color in the beginning of the game loop, like so:</p>

<pre><code>screen.fill((0, 0, 0))
</code></pre>

python pygame move rect