I used the python tutorial and library reference in addition to "Python in a Nutshell" ( <a href="http://oreilly.com/catalog/9780596001889/" rel="nofollow">http://oreilly.com/catalog/9780596001889/</a> )<p>With a healthy amount of coding, I've gotten very comfortable with python, although I still feel like I'm not quite utilizing it idiomatically. As such, I've been going through Programming Python ( <a href="http://oreilly.com/catalog/9780596009250/" rel="nofollow">http://oreilly.com/catalog/9780596009250/</a> ) - which is very well written, IMO - as well as reading a healthy amount of other people's source code, notably CherryPy ( <a href="http://cherrypy.org/" rel="nofollow">http://cherrypy.org/</a> ), since I use it a lot.<p>If you're experienced with other languages, I'd suggest implementing something like a tetris clone as an exercise in learning the language. If you're only experienced with web-dev (as is often the case these days), I'd recommend implementing a few small web-apps with CherryPy - it's the most "pythonic" "web framework" I've seen so far.<p>Oh, and keeping an eye on the mailing lists ( <a href="http://mail.python.org/mailman/listinfo" rel="nofollow">http://mail.python.org/mailman/listinfo</a> ), particularly python-list, python-ideas, python-dev, and python-3000, can be very enlightening.