python物件呼叫父類的方法

2021-09-27 04:09:54 字數 952 閱讀 8902

#類定義

class people:

#定義基本屬性

name = ''

age = 0

#定義私有屬性,私有屬性在類外部無法直接進行訪問

__weight = 0

#定義構造方法

def __init__(self,n,a,w):

self.name = n

self.age = a

self.__weight = w

def getweight(self):

return self.__weight

def speak(self):

#print("%s 說: 我 %d 歲。" %(self.name,self.age))

print(" 說: 我 歲。體重 kg".format(self.name, self.age,self.__weight))

#單繼承示例

class student(people):

grade = ''

def __init__(self,n,a,w,g):

#呼叫父類的構函

people.__init__(self,n,a,w)

#super().__init__(self, n, a, w)

self.grade = g

#覆寫父類的方法

def speak(self):

#people.speak(self)

print("%s 說: 我 %d 歲了,我在讀 %d 年級,體重%dkg"%(self.name,self.age,self.grade,self.getweight()))

s = student('ken',10,60,3)

s.speak() #呼叫子類方法

super(student, s).speak() #呼叫父類方法

python物件呼叫父類的方法

類定義 class people 定義基本屬性 name age 0 定義私有屬性,私有屬性在類外部無法直接進行訪問 weight 0 定義構造方法 def init self,n,a,w self.name n self.age a self.weight w def getweight self...

Python 類方法中呼叫父類的類方法

3.super 測試 推薦使用,安全 如果類的物件方法呼叫父類的物件方法,可以使用super 函式獲取父類的物件方法 如果在類方法中呼叫父類的類方法,則可以使用super 推薦,暫時未發現問題 或者cls.base 屬性 不推薦,我用的時候出現未知錯誤 獲取父類的類方法。為什麼使用屬性會出現問題?因...

Python 子類呼叫父類方法

python在繼承時,如果子類重寫了init 函式,則父類的init 不會被呼叫,這時如果子類只是想要對父類的init 函式進行簡單的擴充套件的話,是很不方便的。那麼有沒有比較方便的方法來從子類呼叫父類呢?第一種是直接使用父類的類名來直接呼叫。python3.3 class parent def i...