This is an archived version of the course. Please find the latest version of the course on the main webpage.

Chapter 1: Introduction

Introduction to Lesson 10

face Josiah Wang

Ah, and that’s our final recap quiz! Hope you don’t miss them too much!

In this lesson, we will try to wrap up any loose ends, and cover any fundamental topics that I think is important for you to be able to navigate your way around different advanced topics in the future. Remember that the aim of the core lessons is to help you build a strong foundation in programming and in Python, so that you will be ready to face the world!

We will start with a discussion of an important ‘pillar’ in object-objected programming called inheritance. This will be the main focus of this lesson. How do you add features to a class without modifying it?

You will also try to extend your robot project to create a special type of robot that leaps all the way to the edge of the grid.

We will then quickly introduce you to another two Python built-in functions that we have not introduced: all() and any().

We will also look at some ways for you to allow Python functions to receive an arbitrary number of input arguments.

From going crazy with object-oriented programming, we will then turn to briefly explore yet another programming paradigm called functional programming. While not a pure functional programming language, Python does offer some functional programming like features, some of which we will discuss.

We will briefly cover more on handling different types of files: pickle files and CSV files.

We will also talk about easier ways of writing and running test cases, using Python’s unittest module.

We will end the lesson by going back to the topic of inheritance - as applied to exception handling. How do you write your custom exceptions?

Are you ready for the final sprint?