newcar car("honda"print ("my new car is {}format(newcar make)print ("my carlike all carshas {%dwheelsformat(car wheels) instances as arguments and instances as return values functions and methods can return objects this is actually nothing new since everything in python is an object and we have been returning values for quite some time the difference here is that we want to have the method create an object using the constructor and then return it as the value of the method suppose you have point object and wish to find the midpoint halfway between it and some other target point we would like to write methodcall it halfway that takes another point as parameter and returns the point that is halfway between the point and the target exampleclass pointdef __init__(selfinitxinity)""create new point at the given coordinates ""self initx self inity def getx(self)return self def gety(self)return self def distancefromorigin(self)return ((self * (self * )* def __str__(self)return " =str(self " =str(self ydef halfway(selftarget)mx (self target my (self target return point(mxmyp point( point( mid halfway(qprint(midprint(mid getx()print(mid gety()