Learning Python from Building Skills in Python book. http://www.itmaybeahack.com/book/python-2.6/html/index.html