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

Python入門教程(二十三)Python的繼承

 更新時間:2023年04月25日 09:12:55   作者:輕松學(xué)Python  
這篇文章主要介紹了Python入門教程(二十三)Python的繼承,Python是一門非常強大好用的語言,也有著易上手的特性,本文為入門教程,需要的朋友可以參考下

Python 繼承

繼承允許我們定義繼承另一個類的所有方法和屬性的類。

父類是繼承的類,也稱為基類。

子類是從另一個類繼承的類,也稱為派生類。

創(chuàng)建父類

任何類都可以是父類,因此語法與創(chuàng)建任何其他類相同:

實例

創(chuàng)建一個名為 Person 的類,其中包含 firstname 和 lastname 屬性以及 printname 方法:

class Person:
  def __init__(self, fname, lname):
    self.firstname = fname
    self.lastname = lname
# Python學(xué)習(xí)交流裙:279199867
  def printname(self):
    print(self.firstname, self.lastname)

# 使用 Person 來創(chuàng)建對象,然后執(zhí)行 printname 方法:

x = Person("Bill", "Gates")
x.printname()

運行實例

python_inheritance_parent.py
Bill Gates

創(chuàng)建子類

要創(chuàng)建從其他類繼承功能的類,請在創(chuàng)建子類時將父類作為參數(shù)發(fā)送:

實例

創(chuàng)建一個名為 Student 的類,它將從 Person 類繼承屬性和方法:

class Student(Person):
  pass

注釋:如果您不想向該類添加任何其他屬性或方法,請使用 pass 關(guān)鍵字。

現(xiàn)在,Student 類擁有與 Person 類相同的屬性和方法。

實例

使用 Student 類創(chuàng)建一個對象,然后執(zhí)行 printname 方法:

x = Student("Elon", "Musk")
x.printname()

運行實例

python_inheritance_child.py
Elon Musk

添加 init() 函數(shù)

到目前為止,我們已經(jīng)創(chuàng)建了一個子類,它繼承了父類的屬性和方法。

我們想要把 init() 函數(shù)添加到子類(而不是 pass 關(guān)鍵字)。

注釋:每次使用類創(chuàng)建新對象時,都會自動調(diào)用 init() 函數(shù)。

實例

為 Student 類添加 init() 函數(shù):

class Student(Person):
  def __init__(self, fname, lname):
    # 添加屬性等

當(dāng)您添加 init() 函數(shù)時,子類將不再繼承父的 init() 函數(shù)。

注釋:子的 init() 函數(shù)會覆蓋對父的 init() 函數(shù)的繼承。

如需保持父的 init() 函數(shù)的繼承,請?zhí)砑訉Ω傅?init() 函數(shù)的調(diào)用:

實例

class Student(Person):
  def __init__(self, fname, lname):
    Person.__init__(self, fname, lname)

運行實例

python_inheritance_init.py
Elon Musk

現(xiàn)在,我們已經(jīng)成功添加了 init() 函數(shù),并保留了父類的繼承,我們準(zhǔn)備好在 init() 函數(shù)中添加功能了。

使用 super() 函數(shù)

Python 還有一個 super() 函數(shù),它會使子類從其父繼承所有方法和屬性:

實例

class Student(Person):
  def __init__(self, fname, lname):
    super().__init__(fname, lname)

運行實例

python_inheritance_super.py
Elon Musk

通過使用 super() 函數(shù),您不必使用父元素的名稱,它將自動從其父元素繼承方法和屬性。

添加屬性

實例

把名為 graduationyear 的屬性添加到 Student 類:

class Student(Person):
  def __init__(self, fname, lname):
    super().__init__(fname, lname)
    self.graduationyear = 2019

運行實例

python_inheritance_add_prop_1.py
2019

在這例子中,2019 年應(yīng)該是一個變量,并在創(chuàng)建 student 對象時傳遞到 Student 類。為此,請在 init() 函數(shù)中添加另一個參數(shù):

實例

添加 year 參數(shù),并在創(chuàng)建對象時傳遞正確的年份:

class Student(Person):
  def __init__(self, fname, lname, year):
    super().__init__(fname, lname)
    self.graduationyear = year

x = Student("Elon", "Musk", 2019)

運行實例

python_inheritance_add_prop_2.py
2019

添加方法

實例

把名為 welcome 的方法添加到 Student 類:

class Student(Person):
  def __init__(self, fname, lname, year):
    super().__init__(fname, lname)
    self.graduationyear = year

  def welcome(self):
    print("Welcome", self.firstname, self.lastname, "to the class of", self.graduationyear)

運行實例

python_inheritance_add_method.py
Welcome Elon Musk to the class of 2019

提示:如果您在子類中添加一個與父類中的函數(shù)同名的方法,則將覆蓋父方法的繼承。

到此這篇關(guān)于Python入門教程(二十三)Python的繼承的文章就介紹到這了,更多相關(guān)Python的繼承內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python中@Property屬性使用方法

    python中@Property屬性使用方法

    這篇文章主要介紹了python中@Property屬性使用方法,在Python中,可以通過@property裝飾器將一個方法轉(zhuǎn)換為屬性,從而實現(xiàn)用于計算的屬性,下面文章圍繞主題展開更多相關(guān)詳情,感興趣的小伙伴可以參考一下
    2022-06-06
  • python3實現(xiàn)名片管理系統(tǒng)(控制臺版)

    python3實現(xiàn)名片管理系統(tǒng)(控制臺版)

    這篇文章主要為大家詳細(xì)介紹了python3實現(xiàn)名片管理系統(tǒng)控制臺版,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • 淺談python中copy和deepcopy中的區(qū)別

    淺談python中copy和deepcopy中的區(qū)別

    Python學(xué)習(xí)過程中會遇到許多問題,最近對copy和deepcopy略感困惑,下面對其進(jìn)行解答,需要的朋友可以參考。
    2017-10-10
  • python+appium+yaml移動端自動化測試框架實現(xiàn)詳解

    python+appium+yaml移動端自動化測試框架實現(xiàn)詳解

    這篇文章主要介紹了python+appium+yaml移動端自動化測試框架實現(xiàn)詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • PyCharm第一次安裝及使用教程

    PyCharm第一次安裝及使用教程

    本文通過圖文并茂的形式給大家介紹PyCharm第一次安裝及使用教程,分步驟通過實際案例給大家操作演示,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-01-01
  • python 實現(xiàn)GUI(圖形用戶界面)編程詳解

    python 實現(xiàn)GUI(圖形用戶界面)編程詳解

    今天小編就為大家分享一篇python 實現(xiàn)GUI(圖形用戶界面)編程詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • Python中break語句和continue語句的用法講解

    Python中break語句和continue語句的用法講解

    在Python中,break語句和continue語句一般用于循環(huán)語句中,這篇文章主要介紹了Python中break語句和continue語句的用法小結(jié),需要的朋友可以參考下
    2022-12-12
  • Python數(shù)據(jù)可視化:頂級繪圖庫plotly詳解

    Python數(shù)據(jù)可視化:頂級繪圖庫plotly詳解

    今天小編就為大家分享一篇Python數(shù)據(jù)可視化:頂級繪圖庫plotly詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Django Form and ModelForm的區(qū)別與使用

    Django Form and ModelForm的區(qū)別與使用

    這篇文章主要介紹了Django Form and ModelForm的區(qū)別與使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • Scrapy框架中的Pipeline使用詳解

    Scrapy框架中的Pipeline使用詳解

    這篇文章主要介紹了Scrapy框架中的Pipeline使用詳解,Scrapy 中的 Pipeline 為我們提供了處理數(shù)據(jù)的功能,在實際開發(fā)中我們經(jīng)常使用它來清洗/驗證數(shù)據(jù)、去重和數(shù)據(jù)保存,需要的朋友可以參考下
    2023-10-10

最新評論