Python 入門之類的繼承

2021-10-10 21:36:13 字數 2818 閱讀 1863

from animalstest import animals

# 請在下面填入定義fish類的**,fish類繼承自animals類

########## begin ##########

class

fish

(animals)

:########## end ##########

def__init__

(self,name)

: self.name = name

defswim

(self)

:print

("%s會游泳"

%self.name)

# 請在下面填入定義leopard類的**,leopard類繼承自animals類

########## begin ##########

class

leopard

(animals)

:########## end ##########

def__init__

(self,name)

: self.name = name

defclimb

(self)

:print

("%s會爬樹"

%self.name)

fname =

input()

lname =

input()

f = fish(fname)

f.breath(

)f.swim(

)f.foraging(

)l = leopard(lname)

l.breath(

)l.run(

)l.foraging(

)

class

point

:def

__init__

(self,x,y,z,h)

: self.x = x

self.y = y

self.z = z

self.h = h

defgetpoint

(self)

:return self.x,self.y,self.z,self.h

class

line

(point)

:# 請在下面填入覆蓋父類getpoint()方法的**,並在這個方法中分別得出x - y與z - h結果的絕對值

########## begin ##########

defgetpoint

(self)

: length_one=

abs(self.x-self.y)

length_two=

abs(self.z-self.h)

########## end ##########

print

(length_one,length_two)

class

changeabs

(int):

def__new__

(cls, val)

:# 填入使用super()內建函式去捕獲對應父類以呼叫它的__new__()方法來計算輸入數值的絕對值的**

# 求乙個數的絕對值的函式為abs()

# 返回最後的結果

########## begin ##########

return

super

(changeabs, cls)

.__new__(cls,

abs(val)

)########## end ##########

class

sortedkeydict

(dict):

defkeys

(self)

:# 填入使用super()內建函式去捕獲對應父類使輸入字典自動排序的**

# 返回最後的結果

########## begin ##########

return

sorted

(super

(sortedkeydict,self)

.keys())

########## end ##########

classa(

object):

deftest

(self)

:print

("this is a.test()"

)classb(

object):

deftest

(self)

:print

("this is b.test()"

)def

check

(self)

:print

("this is b.check()"

)# 請在下面填入定義類c的**

########## begin ##########

class

c(a,b)

:########## end ##########

pass

# 請在下面填入定義類d的**

########## begin ##########

class

d(a,b)

:########## end ##########

defcheck

(self)

:print

("this is d.check()"

)class

e(c,d)

:pass

python入門之類的繼承

類的繼承 1 定義類的繼承 首先我們來看下類的繼承的基本語法 class classname baseclassname 1 定義類的繼承 首先我們來看下類的繼承的基本語法 class classname baseclassname 在定義類的時候,可以在括號裡寫繼承的類,一開始也提到過,如果不用繼...

Python 入門之類的繼承(二)

r星校長 第2關 覆蓋方法 在子類繼承父類的方法時,若子類需要這個方法具有不同的功能,那麼可以通過覆蓋 overriding 來重寫這個方法。本關的任務是讓學習者掌握通過繼承覆蓋方法。通過繼承覆蓋方法,也就是在子類裡再寫乙個與父類中一樣的方法,實現自己想要實現的功能。例如 class parent ...

Python 入門之類的繼承(四)

r星校長 第4關 多重繼承 在 python 中,多重繼承就是允許子類繼承多個父類,子類可以呼叫多個父類的方法和屬性。但是,當多個父類擁有相同方法名的方法時,我們通過方法名呼叫父類方法就有一定的順序。本關的任務就是讓學習者掌握多重繼承。請先看下面這個例子 classa object deftest ...