https://schemas.microsoft.com/office/2004/12/omml" xmlns="https://www.w3.org/TR/REC-html40">

Python for Scientific Computing and Artificial Intelligence is split into 3 parts: in Section 1, the reader is introduced to the Python programming language and shown how Python can aid in the understanding of advanced High School Mathematics. In Section 2, the reader is shown how Python can be used to solve real-world problems from a broad range of scientific disciplines. Finally, in Section 3, the reader is introduced to neural networks and shown how TensorFlow (written in Python) can be used to solve a large array of problems in Artificial Intelligence (AI).

This book was developed from a series of national and international workshops that the author has been delivering for over twenty years. The book is beginner friendly and has a strong practical emphasis on programming and computational modelling.


  • No prior experience of programming is required. 
  • Online GitHub repository available with codes for readers to practice.
  • Covers applications and examples from biology, chemistry, computer science, data science, electrical and mechanical engineering, economics, mathematics, physics, statistics and binary oscillator computing.
  • Full solutions to exercises are available as Jupyter notebooks on the Web.

Support Material

GitHub Repository of Python Files and Notebooks:


Solutions to All Exercises:

Section 1: An Introduction to Python: https://drstephenlynch.github.io/webpages/Solutions_Section_1.html

Section 2: Python for Scientific Computing: https://drstephenlynch.github.io/webpages/Solutions_Section_2.html

Section 3: Artificial Intelligence: https://drstephenlynch.github.io/webpages/Solutions_Section_3.html


Section I. An Introduction to Python. 1. The IDLE Integrated Development Learning Environment. 2. Anaconda, Spyder and the Libraries NumPy, Matplotlib and SymPy. 3. Jupyter Notebooks and Google Colab. 4. Python for AS-Level (High School) Mathematics. 5. Python for A-Level (High School) Mathematics. Section II. Python for Scientific Computing. 6. Biology. 7. Chemistry. 8. Data Science. 9. Economics. 10. Engineering. 11. Fractals and Multifractals. 12. Image Processing. 13. Numerical Methods for Ordinary and Partial Differential Equations. 14. Physics. 15. Statistics. Section III. Artificial Intelligence. 16. Brain Inspired Computing. 17. Neural Networks and Neurodynamics. 18. TensorFlow and Keras. 19. Recurrent Neural Networks. 20. Convolutional Neural Networks, TensorBoard, and Further Reading. 21. Answers and Hints to Exercises.