Python is a good general purpose language, and can also be used to make games.
With libraries like libaudioverse for audio and 3d environments, pyglet or pygame for things like window management, events (for calling code when something happens), keyboard, mouse and joystick support, you have a lot of the basic tools you'll need for games.
There are also a few libraries created specifically for making audiogames, but in my opinion you would learn more by not using them. While it's nice to be able to write a line like:
main_menu = game_kit.Menu("main menu", [("start game", start_game), ("exit", exit)])
You'll learn a lot more if you have to implement screens, menus, screen stacks, items, weapons, a player's inventory, maps and how they're loaded, saved and edited, loot drop system, etc yourself. It will also be a lot easier if you ever want to make a game that does something "nonstandard", meaning something the audio game library doesn't support out of the box.
As far as "branching out", python has a lot of libraries you can use in your code, as well as full packages that are actual applications. As an example, the home automation system I'm using is coded in python, so if I ever need to add support for something, it's pretty easy to.
You can also compile your programs into executables that run on Windows, Linux, and Mac OS. There's even a way to make apps that run on iOS and android (though you need a mac).
If you have questions feel free to ask, though you probably already knew that lol.