3 Answers
+ 3
I don't have any game design experience, but I heard of pygame and ren'py.
+ 2
Those two requirements don't really combine.
Python has game packages, but they are not really game engines. PyGame is the one you'll probably explore.
Godot from https://godotengine.org/ is a real game engine, but doesn't use Python. It has it's own language that is similar enough to Python that you can easily pick it up. It's open source, so no costs of any kind.
The other two major game engines are Unity (C#) and Unreal (C++).
+ 2
+1 for pygame
or code your own :-)
you are on a right place to learn