欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python子類繼承父類構(gòu)造函數(shù)詳解

 更新時(shí)間:2019年02月19日 16:33:25   投稿:laozhang  
在本文里我們給大家分享一篇關(guān)于Python 子類繼承父類構(gòu)造函數(shù)的相關(guān)知識點(diǎn)內(nèi)容,需要的朋友們跟著學(xué)習(xí)下。

如果在子類中需要父類的構(gòu)造方法就需要顯式地調(diào)用父類的構(gòu)造方法,或者不重寫父類的構(gòu)造方法。

子類不重寫 __init__,實(shí)例化子類時(shí),會自動調(diào)用父類定義的 __init__。

class Father(object):
  def __init__(self, name):
    self.name=name
    print ( "name: %s" %( self.name) )
  def getName(self):
    return 'Father ' + self.name
 
class Son(Father):
  def getName(self):
    return 'Son '+self.name
 
if __name__=='__main__':
  son=Son('runoob')
  print ( son.getName() )

輸出結(jié)果為:

name: runoob
Son runoob

如果重寫了__init__ 時(shí),實(shí)例化子類,就不會調(diào)用父類已經(jīng)定義的 __init__,語法格式如下:

class Father(object):
  def __init__(self, name):
    self.name=name
    print ( "name: %s" %( self.name) )
  def getName(self):
    return 'Father ' + self.name
 
class Son(Father):
  def __init__(self, name):
    print ( "hi" )
    self.name = name
  def getName(self):
    return 'Son '+self.name
 
if __name__=='__main__':
  son=Son('runoob')
  print ( son.getName() )

輸出結(jié)果為:

hi
Son runoob

如果重寫了__init__ 時(shí),要繼承父類的構(gòu)造方法,可以使用 super 關(guān)鍵字:

super(子類,self).__init__(參數(shù)1,參數(shù)2,....)

還有一種經(jīng)典寫法:

父類名稱.__init__(self,參數(shù)1,參數(shù)2,...)
class Father(object):
  def __init__(self, name):
    self.name=name
    print ( "name: %s" %( self.name))
  def getName(self):
    return 'Father ' + self.name
 
class Son(Father):
  def __init__(self, name):
    super(Son, self).__init__(name)
    print ("hi")
    self.name = name
  def getName(self):
    return 'Son '+self.name
 
if __name__=='__main__':
  son=Son('runoob')
  print ( son.getName() )

輸出結(jié)果為:

name: runoob
hi
Son runoob

相關(guān)文章

  • Python標(biāo)準(zhǔn)庫os常用函數(shù)和屬性詳解

    Python標(biāo)準(zhǔn)庫os常用函數(shù)和屬性詳解

    os模塊是Python標(biāo)準(zhǔn)庫中的一個(gè)用于訪問操作系統(tǒng)相關(guān)功能的模塊,os模塊提供了一種可移植的使用操作系統(tǒng)功能的方法,本文給大家介紹下?OS標(biāo)準(zhǔn)庫常用函數(shù)和屬性,感興趣的朋友跟隨小編一起看看吧
    2022-11-11
  • 使用opencv-python如何打開USB或者筆記本前置攝像頭

    使用opencv-python如何打開USB或者筆記本前置攝像頭

    這篇文章主要介紹了使用opencv-python如何打開USB或者筆記本前置攝像頭的過程,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Python數(shù)據(jù)分析處理(三)--運(yùn)動員信息的分組與聚合

    Python數(shù)據(jù)分析處理(三)--運(yùn)動員信息的分組與聚合

    這篇文章主要介紹了Python數(shù)據(jù)清洗與處理?運(yùn)動員信息的分組與聚合,根據(jù)Python數(shù)據(jù)清洗與處理?的相關(guān)資料展開運(yùn)動員信息的分組與聚合的文章內(nèi)容,需要的朋友可以參考一下
    2021-12-12
  • 詳解Python 中的容器 collections

    詳解Python 中的容器 collections

    這篇文章主要介紹了Python 中的容器 collections的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下
    2020-08-08
  • CentOS6.9 Python環(huán)境配置(python2.7、pip、virtualenv)

    CentOS6.9 Python環(huán)境配置(python2.7、pip、virtualenv)

    這篇文章主要介紹了CentOS6.9 Python環(huán)境配置(python2.7、pip、virtualenv)方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下
    2019-05-05
  • python實(shí)現(xiàn)數(shù)學(xué)模型(插值、擬合和微分方程)

    python實(shí)現(xiàn)數(shù)學(xué)模型(插值、擬合和微分方程)

    這篇文章主要介紹了python實(shí)現(xiàn)數(shù)學(xué)模型(插值、擬合和微分方程),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-11-11
  • Flask框架利用Echarts實(shí)現(xiàn)繪制圖形

    Flask框架利用Echarts實(shí)現(xiàn)繪制圖形

    echarts是百度推出的一款開源的基于JavaScript的可視化圖表庫,該開發(fā)庫目前發(fā)展非常不錯(cuò),且支持各類圖形的繪制可定制程度高。如下演示案例中,將分別展示運(yùn)用該繪圖庫如何前后端交互繪制(餅狀圖,柱狀圖,折線圖)這三種最基本的圖形,需要的可以參考一下
    2022-10-10
  • Django項(xiàng)目的初步創(chuàng)建與簡單配置

    Django項(xiàng)目的初步創(chuàng)建與簡單配置

    本文主要介紹了Django項(xiàng)目的初步創(chuàng)建與簡單配置,詳細(xì)介紹了如何安裝和配置Django,包括創(chuàng)建項(xiàng)目、數(shù)據(jù)庫配置、路由等,通過本文可以了解如何使用Django創(chuàng)建自己的Web應(yīng)用程序
    2023-09-09
  • 在python里協(xié)程使用同步鎖Lock的實(shí)例

    在python里協(xié)程使用同步鎖Lock的實(shí)例

    今天小編就為大家分享一篇在python里協(xié)程使用同步鎖Lock的實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • 淺析python的Lambda表達(dá)式

    淺析python的Lambda表達(dá)式

    在本文里我們給大家整理了關(guān)于python的Lambda表達(dá)式相關(guān)知識點(diǎn)以及相關(guān)實(shí)例,需要的朋友們學(xué)習(xí)下。
    2019-02-02

最新評論