SP2171 Python

Hello World!

The Python Universe is huge. Our intention in SP2171 is to share the minimum necessary for you to do useful things with Python (while having fun!). The Python sessions (and this site) are not exhaustive nor do we want them to be. There are better, more complete resources elsewhere (e.g. the official Python documentation) that you should use for reference.

Why do we need programming in 71?

Computing has been referred to as the third pillar of science (alongside theory and experiments). There has been an explosion of using computers (e.g. machine learning) in science and society. In this sense, computing is already an essential skill for a scientist to command.

Python will also be used in all thematics SPS modules (A2M, The Cell, The Earth, The Universe). This will be to either work on mathematics, plot stuff, analyse images or create simulations. The breadth of Python knowledge required for these modules is beyond some of the other basic programming modules available in the University.

Why Python?


Python is a free, high-level (i.e. more user-friendly), highly readable programming language. It is also extensively used in data science and machine learning. Since Python is free you will be able to use it forever, and you will be able to slowly build upon everything you learn in 71.

NUS does have site licences for other superb, paid software(e.g. Mathematica, MATLAB). In the past, SPS focussed on Mathematica. However, we switched over to Python because it is free. What is important though, is that learning any programming language makes it easier to learn another programming language.

Learning Python in SPS

  • All lessons will be hands-on.
  • Our focus will be on how to use Python for science. This is not a comprehensive course in Python (e.g. we will not learn about object-oriented programming).
From xkcd.com

A rough idea of what to expect

WhenWhat we will doNote
Week 1 – 6Learn Python Basics with DataCamp
Weeks 7 – 13Start working on specific Python applications.