Pygame est une bibliothèque libre multi-plateforme qui facilite le développement de jeux vidèos temps réel avec le langage de programmation Python. Elle est distribuée selon les termes de la licence GNU LGPL.
Construite sur la bibliothèque SDL, elle permet de programmer la partie multimédia (graphismes, son et entrées au clavier, à la souris ou au joystick), sans se heurter aux difficultés des langages de bas niveaux comme le C et ses dérivés. Cela se fonde sur la supposition que la partie multimédia, souvent la plus contraignante à programmer dans un tel jeu, est suffisamment indépendante de la logique même du jeu pour qu'on puisse utiliser un langage de haut niveau (en l'occurrence le Python) pour la structure du jeu.
Pygame, en plus d'adapter la SDL au Python, fournit également un petit nombre de fonctions spécifiques au développement de jeux.
On peut aussi remarquer que Pygame n'est plus utilisée exclusivement pour des jeux vidéos, mais également pour des applications diverses nécessitant du graphisme.
Par exemple, pour programmer un casse-briques, la SDL sera utilisée par l'intermédiaire de Pygame pour afficher les briques, la raquette et la balle. Ainsi, le programmeur pourra se concentrer sur les calculs des rebonds, des coordonnées de la balle et des destructions de briques. Des méthodes intégrées à PyGame permettront aussi de gérer les collisions entre les balles et les briques.
Voir le site officiel et le wikibook sur Pygame.