Python Programming (Edit): An Introduction to Computer Science by John Zelle, Michael Smith (Paperback, 2010)