Python中new方法的作用是什么-創(chuàng)新互聯(lián)

這篇文章將為大家詳細(xì)講解有關(guān)Python中new方法的作用是什么,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

公司專注于為企業(yè)提供網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、微信公眾號開發(fā)、商城開發(fā),成都小程序開發(fā),軟件按需制作網(wǎng)站等一站式互聯(lián)網(wǎng)企業(yè)服務(wù)。憑借多年豐富的經(jīng)驗(yàn),我們會(huì)仔細(xì)了解各客戶的需求而做出多方面的分析、設(shè)計(jì)、整合,為客戶設(shè)計(jì)出具風(fēng)格及創(chuàng)意性的商業(yè)解決方案,創(chuàng)新互聯(lián)更提供一系列網(wǎng)站制作和網(wǎng)站推廣的服務(wù)。

new_ 方法是什么?

__new__方法其實(shí)就是創(chuàng)建對象的方法

new()方法是在類準(zhǔn)備將自身實(shí)例化時(shí)調(diào)用。

一個(gè)類可以有多個(gè)位置參數(shù)和多個(gè)命名參數(shù),而在實(shí)例化開始之后,在調(diào)用 init()方法之前,Python首先調(diào)用new()方法:

def new(cls, *args, **kwargs):
…

第一個(gè)參數(shù)cls是當(dāng)前正在實(shí)例化的類。

如果要得到當(dāng)前類的實(shí)例,應(yīng)當(dāng)在當(dāng)前類中的new()方法語句中調(diào)用當(dāng)前類的父類 的new()方法。

例如,如果當(dāng)前類是直接繼承自object,那當(dāng)前類的new()方法返回的對象應(yīng)該為:

def new(cls, *args, **kwargs):
…
return object.new(cls)

通常來說,當(dāng)前類開始實(shí)例化時(shí),new()方法會(huì)返回cls(cls指代當(dāng)前類)的實(shí)例,然后該類的init()方法作為構(gòu)造方法會(huì)接收這個(gè)實(shí)例(即self)作為自己的第一個(gè)參數(shù),然后依次傳入new ()方法中接收的位置參數(shù)和命名參數(shù)。

注意:如果new()沒有返回cls(即當(dāng)前類)的實(shí)例,那么當(dāng)前類的init()方法是不會(huì)被調(diào)用的。

如果new()返回其他類的實(shí)例,那么只會(huì)調(diào)用被返回的那個(gè)類的構(gòu)造方法。

class Foo(object):
def init(self, *args, **kwargs):
pass
def new(cls, *args, **kwargs):
return object.new(Stranger, *args, **kwargs)
class Stranger(object):
pass
foo = Foo()
print(type(foo))
》》》》<class ‘main.Stranger'>

因此可以這么描述new()和ini()的區(qū)別,在新式類中new()才是真正的實(shí)例化方法,為類提供外殼制造出實(shí)例框架,然后調(diào)用該框架內(nèi)的構(gòu)造方法init()使其豐滿。

如果以建房子做比喻,new()方法負(fù)責(zé)開發(fā)地皮,打下地基,并將原料存放在工地。

而init()方法負(fù)責(zé)從工地取材料建造出地皮開發(fā)招標(biāo)書中規(guī)定的大樓,init()負(fù)責(zé)大樓的細(xì)節(jié)設(shè)計(jì),建造,裝修使其可交付給客戶。

python可以做什么

Python是一種編程語言,內(nèi)置了許多有效的工具,Python幾乎無所不能,該語言通俗易懂、容易入門、功能強(qiáng)大,在許多領(lǐng)域中都有廣泛的應(yīng)用,例如最熱門的大數(shù)據(jù)分析,人工智能,Web開發(fā)等。

關(guān)于Python中new方法的作用是什么就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

新聞名稱:Python中new方法的作用是什么-創(chuàng)新互聯(lián)
轉(zhuǎn)載來于:http://muchs.cn/article8/ijhop.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)Google、外貿(mào)網(wǎng)站建設(shè)、品牌網(wǎng)站建設(shè)、企業(yè)網(wǎng)站制作做網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)