The book serves as a first introduction to computer programming of scientific applications, using the high-level Python language. The exposition is example- and problem-oriented, where the applications are taken from mathematics, numerical calculus, statistics, physics, biology, and finance. The book teaches "Matlab-style" and procedural programming as well as object-oriented programming. High school mathematics is a required background, and it is advantageous to study classical and numerical one-variable calculus in parallel with reading this book. Besides learning how to program computers, the reader will also learn how to solve mathematical problems, arising in various branches of science and engineering, with the aid of numerical methods and programming. By blending programming, mathematics and scientific applications, the book lays a solid foundation for practicing computational science.
From the reviews of the third edition:
“A Primer on Scientific Programming with Python simultaneously introduces us to the Python programming language and its use in scientific computing. ... The reader will learn good Python programming style from the Primer. The book will often present a direct solution using only the most basic language features ... . Those of us who have learned scientific programming in Python ‘on the streets’ could be a little jealous of students who have the opportunity to take a course out of Langtangen’s Primer.” (John D. Cook, The Mathematical Association of America, September, 2011)
“This voluminous book offers an excellent and detailed explanation of programming paradigms and mathematical lexicons. ... The author includes many programs, explanations, and exercises. ... This book will prove very useful for mathematicians and statisticians. ... I definitely recommend this book to university students for a six-month course or classroom discussions. If someone wants to quickly learn Python concepts, it can be used as a reference.” (Naga Narayanaswamy, ACM Computing Reviews, February, 2013)