第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定

python關(guān)鍵知識(shí)點(diǎn)之--__new__與__init__與super

標(biāo)簽:
Python
new

知识点:

  • 继承自object的新式类才有new
  • 至少要有一个参数cls,代表要实例化的类,此参数在实例化时,有Python解释器自动提供
  • 必须要有返回值,返回实例化出来的实例,这点在自己实现new时要特别注意,可以return父类new出来的实例,或者直接object的new出来的实例
  • cls必须是调用new的对象的子类或自身
  • init有一个参数self,就是这个new返回的实例,init在new的基础上可以完成一些其他初始化的动作,init不需要返回值
  • 若new没有正确返回当前类cls的实例,那init是不会被调用的,及时是父类的实例也不行
class A(object):
    pass

class B(A):
    def __init__(self):
        print 'init'

    def __new__(cls, *args, **kwargs):
        print 'new %s ' % cls
        # 返回父类的对象
        return object.__new__(A, *args, **kwargs)

b=B()
print type(b)
#输出
new <class '__main__.B'>
<class '__main__.A'>
# 由于new返回的是父类的对象,B不会调用init,因此没有‘init’输出
點(diǎn)擊查看更多內(nèi)容
2人點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消