1 Introduction

Getting started (PDF)

raw_input_example.py (PY)

2 Conditionals, loops

How to comment code properly (PDF)

height_example.py (PY)

conditional_examples.py (PY)

loop_examples.py (PY)

3 Defining functions

lecture3.py (PY)

functions.py (PY)

check_for_vowels.py (PY)

4 Strings, lists, list comprehensions

string_examples.py (PY)

list_examples.py (PY)

comprehension_examples.py (PY)

Additional Material

Two examples of a rock-paper-scissors program:

rps_example1.py (PY)

rps_example2.py (PY)

How to use while-else loops (suggestion: don't use them at all, but if you do be aware they work differently than you might think):

while_else.py (PY)

Optional lecture Recursion

Recursion notes (PDF)

Recursion examples (PY)

Optional problems (PDF)

Solutions to optional problems (PY)

5 Tuples, dictionaries, common Python mistakes

tuple_examples.py (PY)

Remember that the keys of a dictionary must be immutable objects, but the values of a dictionary can be either immutable or mutable objects.

Common Python mistakes and misconceptions (PDF)

6 Classes point.py (PY)
7 More about classes wheel.py (PY)
8 Inheritance inheritance_examples.py (PY)