Learn to master basic programming tasks from scratch with real-life, scientifically relevant examples and solutions drawn from both science and engineering. Students and researchers at all levels are increasingly turning to the powerful Python programming language as an alternative to commercial packages and this fast-paced introduction moves from the basics to advanced concepts in one complete volume, enabling readers to gain proficiency quickly. Beginning with general programming concepts such as loops and functions within the core Python 3 language, and moving on to the NumPy, SciPy and Matplotlib libraries for numerical programming and data visualization, this textbook also discusses the use of Jupyter Notebooks to build rich-media, shareable documents for scientific analysis. The second edition features a new chapter on data analysis with the pandas library and comprehensive updates, and new exercises and examples. A final chapter introduces more advanced topics such as floating-point precision and algorithm stability, and extensive online resources support further study. This textbook represents a targeted package for students requiring a solid foundation in Python programming.
Cambridge University Press
Country of Publication:
2nd Revised edition
01 February 2021
Professional and scholarly
Acknowledgments; 1. Introduction; 2. The core Python language I; 3. Interlude: simple plots and charts; 4. The core Python language II; 5. IPython and Jupyter Notebook; 6. NumPy; 7. Matplotlib; 8. SciPy; 9. Data analysis with pandas; 10. General scientific programming; Appendix A. Solutions; Appendix B. Differences between Python versions 2 and 3; Appendix C. SciPy's odeint ordinary differential equation solver; Glossary; Index.
Christian Hill is a physicist and physical chemist currently working at the International Atomic Energy Agency. He has over 25 years' experience of programming in the physical sciences and has been programming in Python for 15 years. His research uses Python to produce, analyze, process, curate and visualize large data sets in the area of spectroscopy and plasma physics and material science.
Reviews for Learning Scientific Programming with Python
'This book is well illustrated and is supported by an extensive collection of resources online in the book's website, scipython.com. This site has code listings and solutions to exercises. I would readily recommend this book to any student (or even a colleague) who wishes to achieve a solid foundation in Python programming.' Vasudevan Lakshminarayanan, Contemporary Physics