To quit Pygame and uninitialize all its modules, you use the following function:
pygame.quit()
How it works:
- What it does: It tells Pygame that you are done using its features. It closes any open windows and shuts down the internal processes that Pygame started when you called
pygame.init(). - Where to put it: Usually, you place it at the very bottom of your script, outside of your functions, so it runs after the
game_loop()has finished.
Example in your code:
In your snake_game.py file, the end of the script should look like this:
# ... all your code and function definitions above ...
# Start the game
game_loop()
# Once game_loop finishes, shut down Pygame
pygame.quit()
# Close the Python program
quit()
Note: In the code snippet you shared earlier, you had pygame.quit() inside the game_loop() function. While that works, it's a "best practice" to call it at the very end of your script to ensure everything cleans up correctly regardless of how the loop ends.