Pygame is a free and open-source cross-platform library for the Python language that allows you to develop multimedia applications and games. Of course, you won't be able to create large AAA-projects with its help, but it's quite possible to make a simple 2D arcade game. All you need from the developer is an interesting idea and confident knowledge of Python; the library takes care of graphics, sound and input.
Structurally, Pygame is built on top of the SDL (Simple DirectMedia Layer) library and is extremely popular among hobby and beginner developers. It owes its popularity to several factors at once and, first of all, to the LGPL license. The latter means that the library can be used free of charge (including for commercial projects) and that its source code is open. Pygame also runs on Windows, macOS, Linux and other systems where Python works. And the last important factor that makes developers so fond of Pygame is the detailed and clear documentation, with tutorials and a full reference. You can find it on the official website of the project.
One of the advantages of Pygame is that it does not require OpenGL. It can make use of multi-core processors, uses optimized C and Assembly code for key functions, and is installed with a single command, pip install pygame. The package comes with many small playable examples, such as aliens, that show how sprites, sound, fonts and joystick input work.
Pygame offers a simple, free-to-use platform ideal for beginner developers to create and experiment with 2D games and multimedia applications.
On the official website of Pygame there is a separate section with projects created by developers from around the world. Many of these projects share their source code, which allows you to understand how the developer has implemented a particular feature in his game.