How to Think Like a Computer Scientist: Learning with Python
by Jeffrey Elkner, Allen B. Downey, Chris Meyers
Publisher: Green Tea Press 2012
This is an introduction to computer science using the Python programming language. It covers the basics of computer programming, including variables and values, functions, conditionals and control flow, program development and debugging. Later chapters cover basic algorithms and data structures.
Home page url
Download or read it online for free here:
by Zed A. Shaw
This is a very beginner book for people who want to learn to code. If you can already code then the book will probably drive you insane. It's intended for people who have no coding chops to build up their skills before starting a more detailed book.
by Charles Severance - PythonLearn
The goal of this book is to provide an Informatics-oriented introduction to programming. The primary difference between a computer science approach and the Informatics approach taken in this book is a greater focus on using Python.
by Al Sweigart - No Starch Press
Learn how to use Python to write programs that do in minutes what would take you hours to do by hand -- no experience required. Once you've mastered the basics, you'll create Python programs that effortlessly perform impressive feats of automation.
by Chris Meyers
This collection is a presentation of several small Python programs. They are aimed at intermediate programmers - people who have studied Python and are fairly comfortable with basic recursion and object oriented techniques.