Home Programming for Chemists
Programming for Chemists

Programming for Chemists

This course is designed to be an introduction to the Python programming language and how it can be applied to solve real world scientific problems. If you have wanted to learn how to program or how to apply it to your own work then hopefully this course can be of assistance. The sessions are as follows:

  1. Introduction and Jupyter Notebook.
  2. Key data types and uses.
  3. Control Flow Statements.
  4. Basic NumPy and arrays.
  5. File input/output using pandas and plotting using matplotlib.
  6. Physical chemistry in Python.
  7. Practical machine learning for chemists.

There is also a worksheet with numerous practice problems (with answer code) for you to put your new Python knowledge to the test! Remember, if your code produces the correct answer but was programmed differently from the answer snippets of code it does not matter, there are numerous ways to approach a problem.

If you have any feedback from taking the course then feel free to contact me so I can continually improve it.

To start the course click the link below to begin. Open the non-checkpoint versions of the ipynb files:

Open In Colab

If Google Colab does not work, try Binder (will take longer to load):


Firefox or Chrome web browsers are recommended.

There is also a message board for people to discuss the course together and to provide feedback:


If you want a tutorial on how to setup a solution for programming on your local computer using Visual Studio Code, follow this link