python類參數(shù)self使用示例
#coding:utf-8
"""
__new__和__init__到底是怎么一回事,看下面的代碼
如果類沒(méi)有定義__new__方法,就從父類繼承這個(gè)__new__方法。
__new__先于__init__執(zhí)行,類帶括號(hào)調(diào)用時(shí),發(fā)生這樣的一件事,
先調(diào)用類的__new__方法,放回該類的實(shí)例對(duì)象,這個(gè)實(shí)例對(duì)象就是__init__方法的第一個(gè)參數(shù)。
請(qǐng)看代碼中tmp,self,p的內(nèi)存地址都是一樣的,都是類的實(shí)例對(duì)象。
"""
class Foo(object):
def __new__(cls, *args, **kwargs):
"""如果不覆蓋這個(gè)__new__方法,也就是說(shuō)不寫(xiě)這個(gè)__new__方法,類會(huì)從object
繼承__new__方法完成返回值實(shí)例對(duì)象
"""
print "__new__方法先被調(diào)用"
tmp = super(Foo,cls).__new__(cls,*args, **kwargs)
print id(tmp)
print type(tmp)
print isinstance(tmp,Foo)
print issubclass(type(tmp),Foo)
return tmp
def __init__(self):
"""self是python默認(rèn)傳的值,該值是調(diào)用__new__的返回值"""
print "__init__被調(diào)用"
print id(self)
p = Foo()
print id(p)
print type(p)
相關(guān)文章
python的setattr函數(shù)實(shí)例用法
在本篇文章里小編給大家整理了一篇關(guān)于python的setattr函數(shù)實(shí)例用法的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友們學(xué)習(xí)下。2020-12-12關(guān)于scipy.optimize函數(shù)使用及說(shuō)明
這篇文章主要介紹了關(guān)于scipy.optimize函數(shù)使用及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12Python代碼執(zhí)行時(shí)間測(cè)量模塊timeit用法解析
這篇文章主要介紹了Python代碼執(zhí)行時(shí)間測(cè)量模塊timeit用法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07pytest官方文檔解讀fixtures調(diào)用fixtures及fixture復(fù)用性
這篇文章主要為大家介紹了pytest官方文檔解讀fixtures調(diào)用fixtures及fixture復(fù)用性,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06Python圖形繪制操作之正弦曲線實(shí)現(xiàn)方法分析
這篇文章主要介紹了Python圖形繪制操作之正弦曲線實(shí)現(xiàn)方法,涉及Python使用numpy模塊數(shù)值運(yùn)算及matplotlib.pyplot模塊進(jìn)行圖形繪制的相關(guān)操作技巧,需要的朋友可以參考下2017-12-12python操作excel的包(openpyxl、xlsxwriter)
這篇文章主要為大家詳細(xì)介紹了python操作excel的包,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-06-06python直接獲取API傳遞回來(lái)的參數(shù)方法
今天小編就為大家分享一篇python直接獲取API傳遞回來(lái)的參數(shù)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-12-12