Background Study

We recommend pre-course reading, alongside trying out examples using a Python interpreter such as Jupyter notebook, as a highly effective learning strategy for getting the most benefit from a training course with Python Charmers. We encourage you to make a note of any questions that arise; then we can answer your questions in the course.

For Complete Beginners to Programming

If you are new to programming concepts, we would recommend reading several different materials for different perspectives and to find an introduction that resonates well with you.

These notes are mostly based on "A Byte of Python", which is a guide to the Python programming language targeted mainly at newbies, although it should be useful for experienced programmers too. There's a list of other tutorials and books below.

The aim is that if all you know about computers is how to save text files, then you can learn Python from this book. If you have previous programming experience, then you can also learn Python from this book.

If you do have previous programming experience, you will be interested in the differences between Python and your favorite programming language - I have highlighted many such differences. A little warning though, Python is soon going to become your favorite programming language!

Original Book: "A Byte of Python"

The official website of the original book "A Byte of Python" by Swaroop C H is here, where you can read the original book online, download the latest versions of the book, buy a printed hard copy, and also send feedback to the original author.

Other Resources for Beginners

  1. A good tutorial with a practical focus is “Automate the Boring Stuff with Python”:

    https://automatetheboringstuff.com/chapter1/

  2. A book called "How to think like a computer scientist", by Alan Downey, uses Python to teach computer programming. It is not easy reading, but you would learn a lot. The first 13 chapters would give a beginning programmer an excellent level of background knowledge for this course:

    http://openbookproject.net/thinkcs/python/english3e/

  3. There is also a longer list of Python-learning links for beginners here:

    http://wiki.python.org/moin/BeginnersGuide/NonProgrammers

For People with Prior Programming Experience

The pre-course reading that we recommend if you have programming experience in other languages is the first seven to ten chapters of the official Python Tutorial. These are available online from here:

http://docs.python.org/3/tutorial/

The tutorial is also available in printable format here as "tutorial.pdf". You will probably want to read the tutorial with Jupyter or an IPython interpreter handy (from e.g. Anaconda) to try out the examples as you see them. Reading through the first ten chapters this way takes about 4 hours.

Background Reading for Data Analytics and Machine Learning

If you will be taking our Python for Predictive Data Analytics course, the background reading we would recommend is the "Python Data Science Handbook" by Jake Vanderplas. The full text is available online here:

https://jakevdp.github.io/PythonDataScienceHandbook/

The course notes you will receive from us cover broadly similar topics but are more application-specific.

Background Reading for Scientists and Engineers

If you will be taking our Python for Scientists & Engineers course and would like to go deeper into some of the scientific Python packages we will use in the course, there is useful background reading material available here:

https://scipy-lectures.github.io/_downloads/PythonScientific-simple.pdf

Last updated