4
使用__new__我是新來的蟒蛇,並試圖在我的手類。我明白了__init__
和__new__
之間的區別。這裏是我班的一個片段,在python
class Vector2D:
def __new__(cls):
print "Testing new"
return super(Vector2D,cls).__new__(cls)
def __init__(self, x, y):
self.x = x
self.y = y
def __str__(self):
return "X:" + str(self.x) + ",Y:" + str(self.y)
我初始化類像下面和期待的「測試新」首先要印刷:
def Main():
vec = Vector2D(1,2)
print "Printing vec:",vec
但我只得到輸出,
Printing vec: X:1,Y:2
對於要打印的「Testing new」,方法__new__()
需要做些什麼?
謝謝。
類的Vector2D:===>類的Vector2D(對象): –
@WillVousden我在這裏縮進堆棧幾次獲得代碼風格。 – Ayubx
@Ayubx我爲你解決了縮進問題。只需編寫代碼(因此不需要額外的縮進),然後選擇完整的代碼塊並單擊'{}'按鈕一次。這將推動一切超過4個空間的正確佈局。 – Duncan