Exercises from the Think Python book