Pythonで空のコンストラクタを作成する方法はありますか?私にはクラスがあります:
class Point:
def __init__(self, x, y, z):
self.x = x
self.y = y
self.z = z
今、私はこのように初期化します:
p = Point(0, 5, 10)
空のコンストラクタを作成して、次のように初期化するにはどうすればよいですか:
p = Point()
class Point:
def __init__(self):
pass
コメントで@jonrsharpeが言ったように、デフォルトの引数を使用できます。
_class Point:
def __init__(self, x=0, y=0, z=0):
self.x = x
self.y = y
self.z = z
_
これで、Point()
を呼び出すことができます
Point
クラスの__init__()
メソッドをオプションのパラメーターで定義する必要があります。
あなたの場合、これはうまくいくはずです:
class Point:
def __init__(self, x=0, y=0, z=0):
self.x = x
self.y = y
self.z = z
pointA = Point(0, 5, 10)
print("pointA: x={}, y={}, z={}".format(pointA.x, pointA.y, pointA.z))
# print "pointA: x=0, y=5, z=10"
pointB = Point()
print("pointB: x={}, y={}, z={}".format(pointB.x, pointB.y, pointB.z))
# print "pointB: x=0, y=0, z=0"
わずかに異なる方法でクラスを構築することにより、目的の結果を達成できます。
class Point:
def __init__(self):
pass
def setvalues(x, y, z):
self.x = x
self.y = y
self.z = z