我想知道是否有人具體使用__init__
函數,它與構造函數不一樣。Python __init__類真的不同於構造函數
因爲我到處都在閱讀這個不應該被認爲是構造函數,但我找不到任何利用這個例子的例子,或者真的顯示它爲什麼如此重要。
所以如果有人有一些具體的代碼顯示它,我會很高興看到這一點!
謝謝
我想知道是否有人具體使用__init__
函數,它與構造函數不一樣。Python __init__類真的不同於構造函數
因爲我到處都在閱讀這個不應該被認爲是構造函數,但我找不到任何利用這個例子的例子,或者真的顯示它爲什麼如此重要。
所以如果有人有一些具體的代碼顯示它,我會很高興看到這一點!
謝謝
__init__()
不是構造函數本身,因爲__init__()
不一定總是試圖構造一個對象的時候叫:
class C(object):
def __new__(cls):
return 5
def __init__(self):
print 'I am a crow! CAW! CAW!'
c = C()
print c
Class Example:
def __init__(self,value1,value2):
self.value1 = value1
self.value2 = value2
我不是專家在Python中,並承認init函數可能有其他用途,但對我來說,它看起來像,並像一個構造函數。
也被定義,它的構造函數:
Dictionary.com - Constructor
滾動鏈接計算機相關定義
http://docs.python.org/2/reference/datamodel.html 向下滾動到經典類的底部,有它說,一個類可以存在沒有init方法,所以init初始化類的一些東西,但是在調用init的那一刻,對象已經存在。或者說,至少我是這麼理解它,否則它很可能是代替__init__
不是一個真正的回答你的問題,我想更多的邏輯來命名它__constr__
左右,但你可以在某些情況下,只是不使用初始化,(如果你認爲「不使用它」作爲它的用途,比我沒有回答部分問題?)
你在哪裏閱讀?因爲我認爲它是一個構造函數。它可能與某些其他語言的構造函數的具體概念不同,但這並不會使它不再是構造函數,而不是Python的賦值,因爲它重新綁定了名稱而不是變異值。 – user2357112