1. Introducation and Installation

  • Why am I doing this course?

    • I’ve never formally learned programming. I mostly learned programming by looking at pieces of code. I vaguely understand the differences between copying a reference and copying a value, but I still encounter situations where something unintentional happens. I vaguely know the difference between a class and an object, but I wouldn’t be able to explain it. My best practices for identing and commenting change every month. It’s time to learn things formally.


  • Creator: Guido van Rossum in 1989. Name inspired by Monty Python

    • BDFL: Benevolent dictator for life

  • Python Philosophy:

    1. Beautiful is better than ugly

    2. Explicit is better than implicit

    3. Simply is better than complex

    4. Complex is better than complicated

    5. Readability counts

    • For the complete list, import this

  • Python 3: close to Guido’s ideal vision.

    • not backward compatible, python2 code must be ported.

    • everything is an object

    • print is a function (keyword in python2)

    • one integer type (python2 had separate types for long and short)

    • all text is now unicode

  • Python 3 has already been around for 10 years.


1.1 Installation

  • Refer to your OS documentation. I have my own setup code here (private).