Our systems are now restored following recent technical disruption, and we’re working hard to catch up on publishing. We apologise for the inconvenience caused. Find out more

Recommended product

Popular links

Popular links


An Introduction to Python Programming for Scientists and Engineers

An Introduction to Python Programming for Scientists and Engineers

An Introduction to Python Programming for Scientists and Engineers

Johnny Wei-Bing Lin, University of Washington, Bothell
Hannah Aizenman, City College, City University of New York
Erin Manette Cartas Espinel, Envestnet Tamarac, Washington
Kim Gunnerson, University of Washington, Bothell
Joanne Liu, Biota Technology Inc., California
July 2022
Paperback
9781108701129

Experience the eBook and the associated online resources on our new Higher Education website. Go to site For other formats please stay on this page.

£54.99
GBP
Paperback
USD
eBook

    Python is one of the most popular programming languages, widely used for data analysis and modelling, and is fast becoming the leading choice for scientists and engineers. Unlike other textbooks introducing Python, typically organised by language syntax, this book uses many examples from across Biology, Chemistry, Physics, Earth science, and Engineering to teach and motivate students in science and engineering. The text is organised by the tasks and workflows students undertake day-to-day, helping them see the connections between programming tools and their disciplines. The pace of study is carefully developed for complete beginners, and a spiral pedagogy is used so concepts are introduced across multiple chapters, allowing readers to engage with topics more than once. “Try This!” exercises and online Jupyter notebooks encourage students to test their new knowledge, and further develop their programming skills. Online solutions are available for instructors, alongside discipline-specific homework problems across the sciences and engineering.

    • Deviates and improves upon the traditional computer science-centric approach of teaching Python to science and engineering students
    • Chapters lead with practical examples from across the sciences and engineering, helping students connect programming tools with real tasks
    • Concepts are introduced across multiple chapters, allowing readers to engage with topics numerous times
    • Introduces software engineering tools and the best-practices used by professional developers in Part IV, to prepare students for writing their own high-quality code
    • Online digital resources include numerous Jupyter notebooks, 'Try This!' exercises, student homework problems, and solutions for course instructors

    Reviews & endorsements

    'This book provides an excellent introduction to the Python language especially targeted at those interested in carrying out calculations in the physical sciences. I especially like the strong coverage of graphics and of good coding practice.' Raymond Pierrehumbert, University of Oxford

    'An excellent introduction to Python for scientists and engineers. Much more than teaching you how to program with Python, it teaches you how to do science with Python.' Eric Shaffer, University of Illinois at Urbana-Champaign

    'Python has achieved an essential role in many disciplines within science, engineering, and beyond. Students and professionals are expected to be fluent in it, and (as I see in my daily job of helping users of a high-performance computing facility) they often struggle to reach that fluency. The authors have succeeded in the daunting task of writing a single book to help people reach a very advanced level of fluency, starting very gently and assuming no background. Unlike other books on the subject, An Introduction to Python Programming for Scientists and Engineers focuses on teaching for the intended end goal of scientists and engineers - investigating their scientific problems - not writing software for its own sake. I am looking forward to working with the generation who will learn how to program in Python using this book!' Davide Del Vento, NCAR Computational & Information Services Laboratory

    'An Introduction to Python Programming for Scientists and Engineers introduces programming in Python using evidence-based approaches to active learning. The exercises help both students and instructors identify misconceptions in programming, allowing students to build a strong foundation in Python programming. The book streamlines content such that there is a focus on mastering immediately useful concepts, normalizing errors, and demonstrating recovery.' Kari L. Jordan, Executive Director, The Carpentries

    See more reviews

    Product details

    July 2022
    Paperback
    9781108701129
    766 pages
    245 × 189 × 31 mm
    1.61kg
    Available

    Table of Contents

    • Part I. Getting Basic Tasks Done:
    • 1. Prologue: Preparing to Program
    • 2. Python as a Basic Calculator
    • 3. Python as a Scientific Calculator
    • 4. Basic Line and Scatter Plots
    • 5. Customized Line and Scatter Plots
    • 6. Basic Diagnostic Data Analysis
    • 7. Two-Dimensional Diagnostic Data Analysis
    • 8. Basic Prognostic Modeling
    • 9. Reading In and Writing Out Text Data
    • 10. Managing Files, Directories, and Programs
    • Part II. Doing More Complex Tasks:
    • 11. Segue: How to Write Programs
    • 12. n-Dimensional Diagnostic Data Analysis
    • 13. Basic Image Processing
    • 14. Contour Plots and Animation
    • 15. Handling Missing Data
    • Part III. Advanced Programming Concepts:
    • 16. More Data and Execution Structures
    • 17. Classes and Inheritance
    • 18. More Ways of Storing Information in Files
    • 19. Basic Searching and Sorting
    • 20. Recursion
    • Part IV. Going From a Program Working to Working Well
    • 21. Make it Usable to Others: Documentation and Sphinx
    • 22. Make it Fast: Performance
    • 23. Make it Correct: Linting and Unit Testing
    • 24. Make it Manageable: Version Control and Build Management
    • 25. Make it Talk to Other Languages.