7. Objects as Arguments and Parameters

You can pass an object as a argument in the usual way. We’ve already seen this in some of the turtle examples where we passed the turtle to some function like draw_rectangle so that the function could control and use whatever turtle instance we passed to it.

Here is a simple function called distance involving our new Point objects. The job of this function is to figure out the distance between two points.

The function distance takes two points and returns the distance between them. Note that distance is not a method of the Point class. You can see this by looking at the indentation pattern. It is not inside the class definition. The other way we can know that distance is not a method of Point is that self is not included as a formal parameter. In addition, we do not invoke distance using the dot notation.