第1关:初识继承

本关的测试文件中定义了一个父类animals类,在此类中定义了三个方法,分别为:breath()run()foraging()。而在通关文件中,定义了两个类:fishleopard,这两个类都继承自animals类。

本关的编程任务是补全animals.py文件中的定义子类部分,具体要求如下:

  • 填入定义继承自animals类的fish类的代码;
  • 填入定义继承自animals类的leopard类的代码。
import animalstest
# 请在下面填入定义fish类的代码,fish类继承自animals类
########## Begin ##########
class fish(animalstest.animals):
########## End ##########def __init__(self,name):self.name = namedef swim(self):print("%s会游泳" %self.name)# 请在下面填入定义leopard类的代码,leopard类继承自animals类
########## Begin ##########
class leopard(animalstest.animals):
########## End ##########def __init__(self,name):self.name = namedef climb(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关:覆盖方法

本关的任务是补全Point.py文件中的代码,具体要求如下:

  • 填入覆盖父类getPoint()方法的代码,并在这个方法中分别得出x - yz - h结果的绝对值。
class Point:def __init__(self,x,y,z,h):self.x = xself.y = yself.z = zself.h = hdef getPoint(self):return self.x,self.y,self.z,self.h
class Line(Point):# 请在下面填入覆盖父类getPoint()方法的代码,并在这个方法中分别得出x - y与z - h结果的绝对值########## Begin ##########def getPoint(self):length_one = abs(self.x - self.y)length_two = abs(self.z - self.h)########## End ##########print(length_one,length_two)

第3关:从标准类派生

本关的编程任务是补全ChangeAbs.py文件中的代码,具体要求如下:

  • 使用super()内建函数去捕获对应的父类,并调用它的__new__()方法来计算输入数值的绝对值,返回最后的结果;

  • 使用super()内建函数去捕获对应父类,从而使输入字典自动排序并返回最后的结果。

class ChangeAbs(int):def __new__(cls, val):# 填入使用super()内建函数去捕获对应父类以调用它的__new__()方法来计算输入数值的绝对值的代码# 求一个数的绝对值的函数为abs()# 返回最后的结果########## Begin ##########return super(ChangeAbs, cls).__new__(cls,abs(val))########## End ##########class SortedKeyDict(dict):def keys(self):# 填入使用super()内建函数去捕获对应父类使输入字典自动排序的代码# 返回最后的结果########## Begin ##########return sorted(super( SortedKeyDict, self).keys())########## End ##########

第4关:多重继承

本关的编程任务是补全src/Step4/multiInherit.py文件的代码,实现当调用类Etest()时,继承的是类Atest()。具体要求如下:

  • 填入定义子类C的代码;
  • 填入定义子类D的代码。
class A(object):def test(self):print("this is A.test()")
class B(object):def test(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 ##########def check(self):print("this is D.check()")
class E(C,D):pass

Python入门之类的继承相关推荐

  1. Python 入门之类的继承

    第1关:初识继承 任务描述 在面向对象编程中,有一种机制叫做继承.通过继承,子类可以继承其父类所有的属性和方法,这在很大程度上增强了代码的重用.以下场景便模拟了继承的现实场景:在自然界中存在着许多的动 ...

  2. 小白量化投资交易入门课(python入门金融分析)

    推荐一门课程:课程连接 课程名称:死工资一党课程:小白量化投资入门课(python) 课程定位:本课程为视频课程,全面覆盖量化交易基础知识点. 面向人群:股票基础较弱者.Python编程基础较弱者. ...

  3. python入门笔记——飞机大战(极简版、未进行继承优化)

    python入门笔记--飞机大战(极简版.未进行继承优化) import random import pygame# 引用pygame里的模块 from pygame.locals import *# ...

  4. python入门笔记——类和对象⑤(继承)

    python入门笔记--类和对象⑤(继承) # python中展现面向对象的三大特征:封装.继承.多态 # 封装:把内容封装到某个地方以便后续的使用 # 对封装来说,其实就是使用初始化构造方法将内容封 ...

  5. python入门教程完整版(懂中文就能学会)-Python入门教程完整版(懂中文就能学会)...

    不过小编的内心是强大的,网友虐我千百遍,我待网友如初恋,因为今天又给大家带来了干货,Python入门教程完整版,完整版啊!完整版! 言归正传,小编该给大家介绍一下这套教程了,希望每个小伙伴都沉迷学习, ...

  6. python入门教程完整版(懂中文就能学会)-Python入门教程完整版400集(懂中文就能学会)快来带走...

    为了感谢大家的关注与支持, 小编今天给大家分享一套高老师的python400集视频教程,里面包含入门进阶,源码,实战项目等等,,不管你是正在学习中,还是想要学习的,通通来吧 肯定不会让你失望.活动仅限 ...

  7. python入门到精通需要学多久-史上最详细python学习路线-从入门到精通,只需5个月时间...

    针对Python的初学者,从无到有的Python语言如何入门,主要包括了:Python的简介,如何下载Python,如何安装Python,如何使用终端.Shell,IDE等各种开发环境进行Python ...

  8. python入门只需20分钟-史上最详细python学习路线-从入门到精通,只需5个月时间...

    针对Python的初学者,从无到有的Python语言如何入门,主要包括了:Python的简介,如何下载Python,如何安装Python,如何使用终端.Shell,IDE等各种开发环境进行Python ...

  9. python编程在哪里写-python入门该从哪里开始?

    相信对于每个人而言,知道编程和学习编程这件事,出发点是不同的.汤哥在北京接触编程的时间是2013年,那个时候还在一个二线城市上大学,还没有这么多各种融资,各种互联网创业的氛围,大家想的更多的是一些线下 ...

最新文章

  1. STL中的lower_bound() 和 upper_bound()
  2. 第1关:实现一个顺序存储的线性表
  3. 算法—详细讲解双向链表的实现(python)
  4. Cobbler部署之FAQ处理
  5. 《南方都市报》:三鹿集团300万摆平搜索引擎?
  6. jeecg怎么样好用吗?
  7. maven学习(一)
  8. 3K档真香旗舰!一加9RT今日正式开售:榨干索尼IMX 766旗舰传感器
  9. linux16.04设置网络,ubuntu16.04之后网络IP配置
  10. python画roc曲线需要什么数据,Python ROC曲线绘制
  11. 24.猫狗数据自定义训练
  12. 海思芯片怎么使用tde给qt加速_海思芯片怎么让华为手机走到射频芯片国产化之路的?...
  13. OpenGL二十面体及多次细分成球体
  14. 数据预处理——以GSE3494为例
  15. win10电源设置选项无效--高级电源选项
  16. Vultr能Ping通但SSH无法连接
  17. 人工智能前沿技术应用趋势与发展展望
  18. android蓝牙支持双向,【玩机攻略】了解蓝牙LDAC,玩转双向蓝牙LDAC
  19. C++ STL函数 string(henu.hjy)
  20. 人脸检测预测年龄性别

热门文章

  1. VirtualBox Host-Only Ethernet Adapter 误删问题
  2. Yolov5模型使用教程
  3. Ubuntu关闭软件更新器开机提醒弹窗
  4. 角度,弧度,三角函数
  5. Legolas工业自动化平台入门(二)数据响应动作
  6. python 函数式编程及递归
  7. TpyeScript基础
  8. IBM bladecenter H刀箱BladeCenter北电交换机VLAN配置
  9. 计算机 无法进入pe,无法进入老毛桃pe系统解决办法[推荐]
  10. arduinopn532模块_NFC开发板/nfc芯片标签/PN532开发板/RFID读卡器/NFC模块/Arduino