# Object Oriented Programming Quicksheet Assessment Andrew, There are so many metaphors for OOP--I like how you describe it as blueprints. Expanding on your (Python-specific) note about the `__init__` constructor, you might be interested to learn about [all the other magic methods in Python classes](https://rszalski.github.io/magicmethods/). Basically all the built-in Python operators can be defined with custom implementations, giving rise to idiomatic stuff like `pathlib.Path` overriding the `/` division operator to mean "concatenate file path." In your future teaching, I encourage you to help students understand not just what OOP is, but the niche that OOP occupies as a problem-solving strategy, and how it can be composed with other strategies. I'm not sure I quite agree with "OOP is better suited for more complex problems;" there are plenty of folks who would argue just the opposite :) -Chris