簡體   English   中英

Python空構造函數

[英]Python empty constructor

有沒有辦法在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()

您可以通過以稍微不同的方式構造類來實現您想要的結果。

class Point:
    def __init__(self):
        pass

    def setvalues(self, x, y, z):
        self.x = x
        self.y = y
        self.z = z
    

您應該使用可選參數定義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"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM