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 Allen Downey - Green Tea Press
A concise introduction to software design using Python. Intended for people with no programming experience, this book starts with the most basic concepts and gradually adds new material. The goal is to teach you to think like a computer scientist.
by Brian Heinold - Mount St. Mary's University
Partly a tutorial and partly a reference book. I summarize information in tables and give a lot of short example programs. I also jump right into things and fill in background information as I go, rather than covering the background material first.
by Svein Linge, Hans Petter Langtangen - Springer
This book presents Python programming as a key method for solving mathematical problems. The style is accessible and concise, the emphasis is on generic algorithms, clean design of programs, use of functions, and automatic tests for verification.
by Jake VanderPlas - O'Reilly Media
The book introduces the core libraries essential for working with data in Python: particularly IPython, NumPy, Pandas, Matplotlib, Scikit-Learn, etc. Familiarity with Python as a language is assumed. The book was written and tested with Python 3.5.