为什么返回(20.0,15.0)程序怎么运行
class Vector2(object):def __init__(self, x=0.0, y=0.0):
self.x = x
self.y = y
def __str__(self):
return "(%s, %s)"%(self.x, self.y)
@classmethod
def from_points(cls, P1, P2):
return cls( P2 – P1, P2 – P1 )
A = (10.0, 20.0)
B = (30.0, 35.0)
AB = Vector2.from_points(A, B)
print AB class Vector2(object):
def __init__(self, x=0.0, y=0.0):# 调用第二步给self.x, self.y赋值
self.x = x
self.y = y
def __str__(self): # 当 print 该实例时调用 ,返回
return "(%s, %s)" % (self.x, self.y)
@classmethod
def from_points(cls, P1, P2):
return cls(P2-P1, P2 - P1)# 第一步这个 将A B 变为(20。0,15.0)
A = (10.0, 20.0)
B = (30.0, 35.0)
AB = Vector2.from_points(A, B)# 调用函数cls
print(AB)# 这时调用AB的__str__方法 第三步
页:
[1]