python魔法方法:__init__( )方法,被稱為構(gòu)造方法。__init__()方法的魔力體現(xiàn)在只要實例化一個對象,這個方法就會在對象被創(chuàng)建時自動調(diào)用。實例化對象時是可以傳入?yún)?shù)的,這些參數(shù)會自動傳入__init__()方法中,可以通過重寫這個方法來自定義對象的初始化操作。
創(chuàng)新互聯(lián)建站2013年至今,先為嘉祥等服務(wù)建站,嘉祥等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為嘉祥企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。總結(jié):__init__()方法是一個特殊的方法,在對象實例化時會被調(diào)用,__init__()方法的作用是初始化。
例1:
class Myclass: i = 123 def __init__(self,friend): self.friend = friend def func(self,myself): #帶有參數(shù)的類方法 self.myself = myself return self.myself +"say hello to " + self.friend use_class = Myclass("xiaoming") print("調(diào)用類的屬性:",use_class.i) print("調(diào)用類的方法:", use_class.func("xiaohong"))
輸出結(jié)果:
#調(diào)用類的屬性: 123 #調(diào)用類的方法: xiaohongsay hello to xiaoming
1、在python中定義類時沒有定義__init__( )方法,則在類實例化時系統(tǒng)會自動調(diào)用默認(rèn)的構(gòu)造方法(無參數(shù)的__init__( )方法),另外__init__( )方法可以有參數(shù),參數(shù)通過__init__( )傳遞到類的實例化操作上
2、一個類中可以定義多個構(gòu)造方法(__init__( )),但是實例化類時只會實例化最后的構(gòu)造方法,即后面的構(gòu)造方法會覆蓋前面的構(gòu)造方法,并且需要根據(jù)最后一個構(gòu)造方法的形式進行實例化(參數(shù)與最后一個構(gòu)造方法的參數(shù)一致)。因此一個類中最好只定義一個構(gòu)造方法
3、初始化實例包括:定義和初始化實例屬性或調(diào)用類的一些方法。
4、構(gòu)造方法可以帶有除self外的其它各種參數(shù)(關(guān)鍵字參數(shù)、默認(rèn)參數(shù)、用元組收集參數(shù)、用字典收集關(guān)鍵字參數(shù)等),可以在實例化類時,傳入對應(yīng)的實參。
當(dāng)類中的一個對象被創(chuàng)建時,會立即調(diào)用構(gòu)造方法。
構(gòu)造方法 init的使用:
class FooBar: def __init__(self): self.somevar = 42 f = FooBar() print f.somevar (這里注意f = FooBar(),要帶括號)
輸出結(jié)果:
42
帶參數(shù)構(gòu)造
class FooBar: def __init__(self,value=42): self.somevar = value f = FooBar("this is a constructor argument") print f.somevar
輸出結(jié)果:
this is a constructor argument
以上就是python類的構(gòu)造函數(shù)是什么的詳細(xì)內(nèi)容,更多請關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司其它相關(guān)文章!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。