notice that when we call the reset(methodwe do not have to pass the self argument into it python automatically takes care of this for us it knows we're calling method on the objectso it automatically passes that object to the method howeverthe method really is just function that happens to be on class instead of calling the method on the objectwe can invoke the function on the classexplicitly passing our object as the self argumentp point(point reset(pprint( xp ythe output is the same as the previous example because internallythe exact same process has occurred what happens if we forget to include the self argument in our class definitionpython will bail with an error messageclass pointdef reset()pass point( reset(traceback (most recent call last)file ""line in typeerrorreset(takes no arguments ( giventhe error message is not as clear as it could be ("you silly foolyou forgot the self argumentwould be more informativejust remember that when you see an error message that indicates missing argumentsthe first thing to check is whether you forgot self in the method definition more arguments sohow do we pass multiple arguments to methodlet' add new method that allows us to move point to an arbitrary positionnot just to the origin we can also include one that accepts another point object as input and returns the distance between themimport math class point