So far, we have been coding in a procedural style. This is a quick scripting method from Python. Once our code gets larger and larger, we need to advance to coding in OOP.
Because, among many other benefits, OOP allows us to move code around by using methods. Once we use classes, we no longer have to physically place code above the code that calls it. This gives us great flexibility in organizing our code.
We can write related code next to other code and no longer have to worry that the code will not run because the code does not sit above the code that calls it.
We can take that to some rather fancy extremes by coding up modules that refer to methods that are not being created within that module. They ...