我很确定已多次询问过这个问题,但我仍然不确定如何在Python中实现多个构造函数.我知道在python中,我只能有一个不同于java或C#或C++的构造函数.我还是很新的.长话短说,我需要实现一个线对象.该线将由函数y = ax + b表示.因此,我需要在行中存储的唯一内容是a,b和布尔值,用于特殊情况,其中行是垂直的(a =无穷大).在这种情况下,a将存储该行的x位置.要创建一条线,我有三种方法.1是直接放入a,b和布尔值.2是以元组的形式输入2个点.3是放入点和矢量.我的代码到目前为止:
class line:
def __init__(self, a, b, noSlope):
self.a = a
self.b = b
self.noSlope = noSlope
def lineFromPoints(point1, point2):
deltaX = point2[0] - point1[0]
deltaY = point2[1] - point1[1]
if deltaX == 0:
return line(point1[0], 0, True)
else:
a = deltaY / deltaX
b = point1[1] - a * point1[0]
return line(a, b, False)
def lineFromVector(vector, point):
if vector[0] == 0:
return line(point1[0], 0, True)
else:
a = vector[1] / vector[0]
b = point1[1] …Run Code Online (Sandbox Code Playgroud)