Starting Out with Python, 4th Edition by Tony Gaddis