When comparing pygame vs Rainbow, the Slant community recommends pygame for most people. In the question“What are the best 2D game engines?” pygame is ranked 16th while Rainbow is ranked 79th. The most important reason people chose pygame is:
Pygame uses Python as its scripting language. Python is widely considered one of the easiest languages to grasp even for beginners.
Specs
Ranked in these QuestionsQuestion Ranking
Pros

Pro Easy Python syntax
Pygame uses Python as its scripting language. Python is widely considered one of the easiest languages to grasp even for beginners.
Pro Very easy to understand
The API is very straightforward.
Pro Good canvas system
Pygame has a drawing system that allows the user to create and draw on an unlimited number of canvases.
Pro Open source
Distributed under the MIT License.
Pro Written in modern C++, is scriptable in Lua
Pro Cross-platform
With support for Android, iOS, Linux, Mac OS X and Windows.
Pro Optional FMOD audio engine
Pro Supports Spine
Pro Physics
Box2D integrated with Lua bindings.
Cons

Con Deathly slow
Con Nonexistent community
No good forums, wiki, or other ways to reach other Pygame developers.
Con Very basic
Pretty much just a wrapper for SDL.
Con Pygame is a multimedia framework, not a game engine
Physics, AI and networking are not supported.
Con Messy documentation
The docs are messy, and some basic functions are infuriating to work out. There's even some places in the documentation where it's clearly wrong about how a method is called/what the arguments really do.
Con Outdated
Pygame uses a really old version of SDL and is missing some of the features developed for SDL2.
Con Hasn't been updated in years
Hasn't been updated in years.
Con Not as feature-rich as other engines
Con Small community
Being fairly new on the scene, there aren't much of a community to speak of.
