Some things如果我在課堂上使用__init__
而不是init__
,則不起作用。我只是好奇這兩者之間的區別是什麼。python類中的init__和__init__有什麼區別?
這是一堂課。但它真的沒關係,因爲它與init__
一起使用,它不與__init__
。我知道這是一個打字錯誤,那麼這意味着我可以以任何方式實際調用它。
class Point(namedtuple('Point', 'x, y, z')):
'class of a point as a tuple array'
__slots__ =() # prevent creation of instance dictionaries to save memory
def init__(self, x, y, z):
self.x = x
self.y = y
self.z = z
def __del__(self):
'delete the Point'
def __repr__(self):
'Return a nicely formatted representation string'
return '[%r, %r, %r]' % (self)
def __str__(self):
'printing format'
return '%s[%r, %r, %r]' % (self.__class__.__name__,
self.x, self.y, self.z)
def __add__(self, other):
return Point(self.x + other.x, self.y + other.y, self.z + other.z)
def __sub__(self, other):
return Point(self.x - other.x, self.y - other.y, self.z - other.z)
def __mul__(self, scal):
'multiplication ny scalar'
return Point(self.x * scal, self.y * scal, self.z * scal)
def __div__(self, scal):
'division ny scalar'
if scal != 0.0:
return Point(self.x/scal, self.y/scal, self.z/scal)
else:
sys.exit('Division by zero!')
我的問題有「如何在兩種不同的方式實例化一個對象?」這種方式完美地工作。
如何解釋?
向我們展示您的課程。 – alexvassel
[Python \ _ \ _ init \ _ \ _和自己可能重複的是什麼?](http://stackoverflow.com/questions/625083/python-init-and-self-what-do-they-do ) –
@Martijn不,這不是一個可能的重複,就像在關閉對話框中定義的那樣。它不包括*完全相同的內容。你自己對這個問題的回答,如果作爲對相關問題的答案進行合併,將不會以任何令人滿意的方式回答它,它只會看起來不合適,並使讀者感到困惑。 –