I, too, have been programming my roguelike in Python. It's meant to be a real-time simulation (akin to Dwarf Fortress) rather than turn-based, so I will need to optimize for performance more than a typical roguelike. My impression is that this is indeed possible. My favorite commercial game, EVE-Online, is written in Stackless Python so I have to believe that it's possible to have a high-performance Python game. And I'm enjoying learning the language.
As for reference materials: I'm using Mark Lutz's "Learning Python". He's pretty long-winded, could have covered the same material in half the number of pages, but otherwise I have no complaints about the book. It taught me the language.
Most people using Python for games are using the Pygame library for input/output/graphics, if they aren't using a roguelike-specific library such as libtcod. I'm using an alternative called
pyglet, which seems a little more streamlined than pyglet and has fewer dependencies. It wraps OpenGL so my code "simulates" an ASCII display rather than using a "real" curses-based terminal. As far as I know, I'm the only person who has written roguelike code using the pyglet library. Some of that code is up on github here, including my 7DRL (the "warp-core-breach" branch):
https://github.com/joeclark77net/jc77rogueI would share code from my more advanced project, but I'm not ready to open-source it yet...