最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python中super的用法實例

 更新時間:2015年05月28日 16:06:12   投稿:junjie  
這篇文章主要介紹了Python中super的用法實例,本文對比了普通繼承和super繼承的相關(guān)內(nèi)容,從運行結(jié)果上看,普通繼承和super繼承是一樣的,但是其實它們的內(nèi)部運行機(jī)制不一樣,這一點在多重繼承時體現(xiàn)得很明顯,需要的朋友可以參考下

super 是用來解決多重繼承問題的,直接用類名調(diào)用父類方法在使用單繼承的時候沒問題,但是如果使用多繼承,會涉及到查找順序(MRO)、重復(fù)調(diào)用(鉆石繼承)等種種問題??傊叭肆粝碌慕?jīng)驗就是:保持一致性。要不全部用類名調(diào)用父類,要不就全部用 super,不要一半一半。

普通繼承

復(fù)制代碼 代碼如下:

class FooParent(object): 
    def __init__(self): 
        self.parent = 'I\'m the parent.' 
        print 'Parent' 
     
    def bar(self,message): 
        print message, 'from Parent' 
         
class FooChild(FooParent): 
    def __init__(self): 
        FooParent.__init__(self) 
        print 'Child' 
         
    def bar(self,message): 
        FooParent.bar(self,message) 
        print 'Child bar function.' 
        print self.parent 
         
if __name__=='__main__': 
    fooChild = FooChild() 
    fooChild.bar('HelloWorld') 

super繼承

復(fù)制代碼 代碼如下:

class FooParent(object): 
    def __init__(self): 
        self.parent = 'I\'m the parent.' 
        print 'Parent' 
     
    def bar(self,message): 
        print message,'from Parent' 
 
class FooChild(FooParent): 
    def __init__(self): 
        super(FooChild,self).__init__() 
        print 'Child' 
         
    def bar(self,message): 
        super(FooChild, self).bar(message) 
        print 'Child bar fuction' 
        print self.parent 
 
if __name__ == '__main__': 
    fooChild = FooChild() 
    fooChild.bar('HelloWorld') 

程序運行結(jié)果相同,為:

復(fù)制代碼 代碼如下:

Parent
Child
HelloWorld from Parent
Child bar fuction
I'm the parent.

從運行結(jié)果上看,普通繼承和super繼承是一樣的。但是其實它們的內(nèi)部運行機(jī)制不一樣,這一點在多重繼承時體現(xiàn)得很明顯。在super機(jī)制里可以保證公共父類僅被執(zhí)行一次,至于執(zhí)行的順序,是按照mro進(jìn)行的(E.__mro__)。
注意super繼承只能用于新式類,用于經(jīng)典類時就會報錯。
新式類:必須有繼承的類,如果沒什么想繼承的,那就繼承object
經(jīng)典類:沒有父類,如果此時調(diào)用super就會出現(xiàn)錯誤:『super() argument 1 must be type, not classobj』

關(guān)于super用法的詳細(xì)研究可參考「http://m.fzitv.net/article/66912.htm

相關(guān)文章

  • python調(diào)用MySql保姆級圖文教程(包會的)

    python調(diào)用MySql保姆級圖文教程(包會的)

    MySQL是當(dāng)今市場上最受歡迎的數(shù)據(jù)庫系統(tǒng)之一,由于大多數(shù)應(yīng)用程序需要以某種形式與數(shù)據(jù)交互,因此像Python這樣的編程語言提供了用于存儲和訪問這些數(shù)據(jù)的工具,這篇文章主要給大家介紹了關(guān)于python調(diào)用MySql的相關(guān)資料,需要的朋友可以參考下
    2024-12-12
  • Python版微信紅包分配算法

    Python版微信紅包分配算法

    微信紅包告訴你,學(xué)好數(shù)學(xué),真的可以多搶紅包!!下面就和大家分享一下?lián)尲t包的秘籍,簡單概括就是:讓朋友先上!
    2015-05-05
  • Python實現(xiàn)解壓當(dāng)天創(chuàng)建的ZIP文件到指定文件夾中

    Python實現(xiàn)解壓當(dāng)天創(chuàng)建的ZIP文件到指定文件夾中

    這篇文章主要為大家詳細(xì)介紹了Python如何實現(xiàn)解壓當(dāng)天創(chuàng)建的ZIP文件到指定文件夾中,文中的示例代碼講解詳細(xì),需要的小伙伴可以參考下
    2024-03-03
  • Pytorch用Tensorboard來觀察數(shù)據(jù)

    Pytorch用Tensorboard來觀察數(shù)據(jù)

    這篇文章主要介紹了Pytorch用Tensorboard來觀察數(shù)據(jù),上一篇文章我們講解了關(guān)于Pytorch?Dataset的數(shù)據(jù)處理,這篇我們就來講解觀察數(shù)據(jù),下面具體相關(guān)資料,需要的朋友可以參考一下,希望對你有所幫助
    2021-12-12
  • Python中文分詞工具之結(jié)巴分詞用法實例總結(jié)【經(jīng)典案例】

    Python中文分詞工具之結(jié)巴分詞用法實例總結(jié)【經(jīng)典案例】

    這篇文章主要介紹了Python中文分詞工具之結(jié)巴分詞用法,結(jié)合實例形式總結(jié)分析了Python針對中文文件的讀取與分詞操作過程中遇到的問題與解決方法,需要的朋友可以參考下
    2017-04-04
  • Flask框架使用異常捕獲問題

    Flask框架使用異常捕獲問題

    這篇文章主要介紹了Flask框架使用異常捕獲問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Python中yield關(guān)鍵字及與return的區(qū)別詳解

    Python中yield關(guān)鍵字及與return的區(qū)別詳解

    這篇文章主要介紹了Python中yield關(guān)鍵字及與return的區(qū)別詳解,帶有 yield 的函數(shù)在 Python 中被稱之為 generator生成器,比如列表所有數(shù)據(jù)都在內(nèi)存中,如果有海量數(shù)據(jù)的話將會非常耗內(nèi)存,想要得到龐大的數(shù)據(jù),又想讓它占用空間少,那就用生成器,需要的朋友可以參考下
    2023-08-08
  • Python采集天天基金數(shù)據(jù)掌握最新基金動向

    Python采集天天基金數(shù)據(jù)掌握最新基金動向

    這篇文章主要介紹了Python采集天天基金數(shù)據(jù)掌握最新基金動向,本次案例實現(xiàn)流程為發(fā)送請求、獲取數(shù)據(jù)、解析數(shù)據(jù)、多頁爬取、保存數(shù)據(jù),接下來來看看具體的操作過程吧
    2022-01-01
  • python實現(xiàn)Simhash算法

    python實現(xiàn)Simhash算法

    這篇文章主要介紹了python實現(xiàn)Simhash算法,simhash算法用來進(jìn)行文本比對的,simhash包含分詞、hash、加權(quán)、合并、降維五大步驟,下文圍繞更多相關(guān)資料介紹,需要的小伙伴可以參考一下
    2022-02-02
  • python開發(fā)之基于thread線程搜索本地文件的方法

    python開發(fā)之基于thread線程搜索本地文件的方法

    這篇文章主要介紹了python開發(fā)之基于thread線程搜索本地文件的方法,以完整實例形式分析了Python基于多線程處理搜索問題的相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2015-11-11

最新評論

新丰县| 九龙城区| 砚山县| 天祝| 大安市| 哈尔滨市| 平和县| 赤壁市| 义乌市| 房产| 瑞丽市| 剑川县| 桐庐县| 香格里拉县| 大厂| 静乐县| 略阳县| 新沂市| 安西县| 怀宁县| 资阳市| 刚察县| 洪泽县| 丰城市| 光泽县| 湘潭县| 大英县| 湄潭县| 梁河县| 石棉县| 临高县| 贺州市| 繁昌县| 共和县| 恩施市| 龙泉市| 溧阳市| 普安县| 潍坊市| 博乐市| 兖州市|