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

python super()函數(shù)的基本使用

 更新時(shí)間:2020年09月10日 11:01:10   作者:新碼農(nóng)  
這篇文章主要介紹了python super()函數(shù)的基本使用,幫助大家更好的理解和使用python,感興趣的朋友可以了解下

super主要來(lái)調(diào)用父類方法來(lái)顯示調(diào)用父類,在子類中,一般會(huì)定義與父類相同的屬性(數(shù)據(jù)屬性,方法),從而來(lái)實(shí)現(xiàn)子類特有的行為。也就是說(shuō),子類會(huì)繼承父類的所有的屬性和方法,子類也可以覆蓋父類同名的屬性和方法。

class Parent(object):
  Value = "Hi, Parent value"
 
  def fun(self):
    print("This is from Parent")
 
 
# 定義子類,繼承父類
class Child(Parent):
  Value = "Hi, Child value"
 
  def ffun(self):
    print("This is from Child")
 
 
c = Child()
c.fun()
c.ffun()
print(Child.Value)
 
# 輸出結(jié)果
# This is from Parent
# This is from Child
# Hi, Child value

但是,有時(shí)候可能需要在子類中訪問(wèn)父類的一些屬性,可以通過(guò)父類名直接訪問(wèn)父類的屬性,當(dāng)調(diào)用父類的方法是,需要將”self”顯示的傳遞進(jìn)去的方式。

class Parent(object):
  Value = "Hi, Parent value"
 
  def fun(self):
    print("This is from Parent")
 
 
class Child(Parent):
  Value = "Hi, Child value"
 
  def fun(self):
    print("This is from Child")
    # 調(diào)用父類Parent的fun函數(shù)方法
    Parent.fun(self)
 
 
c = Child()
c.fun()
 
# 輸出結(jié)果
# This is from Child
# This is from Parent
# 實(shí)例化子類Child的fun函數(shù)時(shí),首先會(huì)打印上條的語(yǔ)句,再次調(diào)用父類的fun函數(shù)方法

這種方式有一個(gè)不好的地方就是,需要經(jīng)父類名硬編碼到子類中,為了解決這個(gè)問(wèn)題,可以使用Python中的super關(guān)鍵字。

class Parent(object):
  Value = "Hi, Parent value"
 
  def fun(self):
    print("This is from Parent")
 
 
class Child(Parent):
  Value = "Hi, Child value"
 
  def fun(self):
    print("This is from Child")
    # Parent.fun(self)
    # 相當(dāng)于用super的方法與上一調(diào)用父類的語(yǔ)句置換
    super(Child, self).fun()
 
 
c = Child()
c.fun()
 
# 輸出結(jié)果
# This is from Child
# This is from Parent
# 實(shí)例化子類Child的fun函數(shù)時(shí),首先會(huì)打印上條的語(yǔ)句,再次調(diào)用父類的fun函數(shù)方法

以上就是python super()函數(shù)的基本使用的詳細(xì)內(nèi)容,更多關(guān)于python super()函數(shù)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論