'The ability to write code is becoming an essential skill for chemistry students. Python is widely used in chemistry research and is increasingly taught in undergraduate courses, but it has lacked a comprehensive textbook tailored to chemistry students. Python for Chemists addresses this need by providing detailed coverage of the basics of the Python language and presenting a range of practical examples across the standard chemistry syllabus. This book will be useful for undergraduate and graduate students interested in learning and using Python in their studies and research and for instructors looking to teach Python in a chemistry context.' Benjamin J. Morgan, University of Bath
1. Introduction; 2. Basic Python usage; 3. Strings; 4. Lists and loops; 5. Comparisons and flow control; 6. Functions; 7. Data structures; 8. File input/output; 9. Basic numpy; 10. Graph plotting with Matplotlib; 11. The steady-state approximation; 12. Liquid-vapour equilibrium; 13. Jupyter notebook; 14. LaTeX; 15. Chemistry databases and file formats; 16. More NumPy and Matplotlib; 17. Thermodynamic cycles; 18. Vectors, matrices and linear algebra; 19. Linear least squares fitting I; 20. Linear least squares fitting II; 21. Numerical integration; 22. Optimization with scipy.optimize; 23. Vibrational spectroscopy; 24. The morse oscillator; 25. Solving ordinary differential equations; 26. The oregonator; 27. Root-finding with scipy.optimize; 28. Rotational spectroscopy; 29. Peak finding; 30. Fitting the vibrational spectrum of CO; 31. pandas; 32. Simulating a powder diffraction spectrum; 33. The Hückel approximation; 34. Nonlinear fitting and constrained optimization; 35. SymPy; 36. Molecular orbital theory for H2+; 37. Approximations of the helium atom electronic energy; 38. Computational chemistry with Psi4 and Python; 39. Atomic structure; 40. Solutions.