The purpose of this lab is to provide you with a brief introduction to OOP in Python, which you will encounter in programming heavily in the future. The Python object system is built around classes and instances. There's a lot to go over before we have practice problems in this lab, so please follow along in your Python file and try things out in the terminal; it's great practice!

The starter file can be found here.

The following classes are required

Let's start by considering a hypothetical type of object we might like to create. Then, we will look at the example code and work through it step-by-step as we introduce relevant aspects of the object system. Next, you will expand our class on your own as practice. Finally, we will finish the lab off by having you implement your very own class!

Also, here's a list of important words that you'll come across throughout the lab. If you're ever confused about any word, this is the place to refer to!