Python for Software Design: How to Think Like a Computer Scientist

  • 3h 46m
  • Allen B. Downey
  • Cambridge University Press
  • 2009

A no-nonsense introduction to software design using the Python programming language. Written for people with no programming experience, this book starts with the most basic concepts and gradually adds new material. Some of the ideas students find most challenging, like recursion and object-oriented programming, are divided into a sequence of smaller steps and introduced over the course of several chapters. The focus is on the programming process, with special emphasis on debugging. The book includes a wide range of exercises, from short examples to substantial projects, so that students have ample opportunity to practise each new concept.

  • No-nonsense style, perfect for beginning undergraduates and first-time programmers
  • Difficult concepts explained in bite-size portions

In this Book

  • The Way of the Program
  • Variables, Expressions, and Statements
  • Functions
  • Case Study—Interface Design
  • Conditionals and Recursion
  • Fruitful Functions
  • Iteration
  • Strings
  • Case Study—Word Play
  • Lists
  • Dictionaries
  • Tuples
  • Case Study—Data Structure Selection
  • Files
  • Classes and Objects
  • Classes and Functions
  • Classes and Methods
  • Inheritance
  • Case Study—Tkinter