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