Allen Downey

If you want to learn how to program, working with Python is an excellent way to start. This hands-on guide takes you through the language a step at a time, beginning with basic programming concepts before moving on to functions, recursion, data structures, and object-oriented design. This second edition and its supporting code have been updated for Python 3.

Through exercises in each chapter, you’ll try out programming concepts as you learn them. Think Python is ideal for students at the high school or college level, as well as self-learners, home-schooled students, and professionals who need to learn programming basics. Beginners just getting their feet wet will learn how to start with Python in a browser.

Start with the basics, including language syntax and semantics
Get a clear definition of each programming concept
Learn about values, variables, statements, functions, and data structures in a logical progression
Discover how to work with files and databases
Understand objects, methods, and object-oriented programming
Use debugging techniques to fix syntax, runtime, and semantic errors
Explore interface design, data structures, and GUI-based programs through case studies