A craft cannot be learned by reading alone; practice is also necessary. To learn best, you need a well-defined task at an appropriate level of difficulty. Python Practice Projects is such a collection of problems, each designed to straddle the line between toy example and production system. All too often the answer to, "What is a good project for learning programming?" is "Whatever interests you."

