After you are done calling the drawing functions to make the display Surface object look the way you want, you must call
pygame.display.update() to make the display Surface actually appear on the user’s monitor.
The one thing that you must remember is that
pygame.display.update() will only make the display Surface (that is, the Surface object that was returned from the call to
pygame.display.set_mode()) appear on the screen. If you want the images on other Surface objects to appear on the screen, you must "blit" them (that is, copy them) to the display Surface object with the
blit() method (which is explained next in the "Drawing Images" section).