from animalstest import animals
# 请在下面填入定义fish类的代码,fish类继承自animals类########## Begin ##########classfish(animals):########## End ##########def__init__(self,name):
self.name = name
defswim(self):print("%s会游泳"%self.name)# 请在下面填入定义leopard类的代码,leopard类继承自animals类########## Begin ##########classleopard(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()
2. 覆盖方法
classPoint: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
classLine(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)
第3关:从标准类派生
classChangeAbs(int):def__new__(cls, val):# 填入使用super()内建函数去捕获对应父类以调用它的__new__()方法来计算输入数值的绝对值的代码# 求一个数的绝对值的函数为abs()# 返回最后的结果########## Begin ##########returnsuper(ChangeAbs, cls).__new__(cls,abs(val))########## End ##########classSortedKeyDict(dict):defkeys(self):# 填入使用super()内建函数去捕获对应父类使输入字典自动排序的代码# 返回最后的结果########## Begin ##########returnsorted(super(SortedKeyDict,self).keys())########## End ##########
第4关:多重继承
classA(object):deftest(self):print("this is A.test()")classB(object):deftest(self):print("this is B.test()")defcheck(self):print("this is B.check()")# 请在下面填入定义类C的代码########## Begin ##########classC(A,B):########## End ##########pass# 请在下面填入定义类D的代码########## Begin ##########classD(A,B):########## End ##########defcheck(self):print("this is D.check()")classE(C,D):pass