A refreshingly different and engaging way of learning how to program using Python. This book includes example code and brief user-friendly explanations, along with 150 progressively trickier challenges. As readers are actively involved in their learning, they quickly master the new skills and gain confidence in creating their own programs.