自定义“鸟”类,“鸣禽”、“猛禽”继承自“鸟”类,“画眉”、“百灵”继承自“鸣禽”,“鹰”、“雕”继承自“猛禽”。
(笔记模板由python脚本于2023年11月06日 19:08:56创建,本篇笔记适合初通Python类的coder翻阅)
Python 官网:https://www.python.org/
Free:大咖免费“圣经”教程《 python 完全自学教程》,不仅仅是基础那么简单……
地址:https://lqpybook.readthedocs.io/
自学并不是什么神秘的东西,一个人一辈子自学的时间总是比在学校学习的时间长,没有老师的时候总是比有老师的时候多。
—— 华罗庚
本文质量分:
CSDN质量分查询入口:http://www.csdn.net/qc
【题目来源于 CSDN 问答社区提问“Python类继承”】
本题目是Python类继承(单继承) 。自定义“鸟”类,“鸣禽”、“猛禽”继承自“鸟”类;“画眉”、“百灵”继承自“鸣禽”,“鹰”、“雕”继承自“猛禽”。
自定义“鸟”类,初始化方法__init__内容题目没有要求,直接pass。
Python代码
class Bird: # 鸟类。
def __init__(self):
pass
def sayHello(self):
print(f"\n\n\n{' 我是一只鸟 ':~^35}")
def fly(self):
print(f"\n{' 我在飞行!':^35}")
class Accentor(鸣禽类)类继承自“鸟”class Bird类,初始化方法内容依旧没有要求,继承父类Bird没有拓展。
鸣禽类
class Accentor(Bird): # 鸣禽类,继承自鸟类。
def __init__(self):
super().__init__() # 继承Bird类
pass # 拓展。
def sayHello(self):
super().sayHello() # 继承父类方法。
print(f"\n{'':>4}我是一只鸣禽。", end='')
猛禽类
class Raptor(Bird): # 猛禽类。
def __init__(self):
super().__init__() # 继承Accentor类
pass # 拓展。
def sayHello(self):
super().sayHello() # 继承父类方法。
print(f"\n{'':>4}我是一只猛禽。", end='')
“画眉”、“百灵”、“鹰”、“雕”,是继承自“鸟”类的三级类,你分别继承自“鸣禽”和“猛禽”。这些三级类的初始化方法,除了继承父类外,我拓展了name形参的初始化,让具体的实例对象有了自己的名字。
类实例代码
t = Thush('蛋蛋')
t.sayHello() # 画眉类seyHello方法。
t.fly()
l = Lark('灵儿')
l.sayHello() # 百灵类seyHello方法。
l.fly()
es = Eagles('小鹰') # 鹰类实例。
es.sayHello() # 鹰类seyHello方法。
es.fly()
e = Eagle('刁刁')
e.sayHello() # 雕类seyHello方法。
e.fly()
“画眉”类
class Thush(Accentor): # 画眉类,继承自鸣禽类。
def __init__(self, name):
super().__init__() # 继承Accentor类
self.name = name # 拓展。
def sayHello(self):
super().sayHello() # 继承父类方法。
print(f"我是{self.name},是一只画眉鸟。")
“百灵”类
class Lark(Accentor): # 百灵类,继承自鸣禽类。
def __init__(self, name):
super().__init__() # 继承Accentor类
self.name = name # 拓展。
def sayHello(self):
super().sayHello() # 继承父类方法。
print(f"我是{self.name},是一只百灵鸟。")
“鹰”类
class Eagles(Raptor): # 鹰类,继承自猛禽类。
def __init__(self, name):
super().__init__() # 继承Accentor类
self.name = name # 拓展。
def sayHello(self):
super().sayHello() # 继承父类方法。
print(f"我是{self.name},是一只鹰。")
“雕”类
class Eagle(Raptor): # 雕类,继承自猛禽类。
def __init__(self, name):
super().__init__() # 继承Accentor类
self.name = name # 拓展。
def sayHello(self):
super().sayHello() # 继承父类方法。
print(f"我是{self.name} 是一只雕。")
(源码较长,点此跳过源码)
#!/sur/bin/nve python
# coding: utf-8
class Bird: # 鸟类。
def __init__(self):
pass
def sayHello(self):
print(f"\n\n\n{' 我是一只鸟 ':~^35}")
def fly(self):
print(f"\n\n{' 我在飞行!':~^35}")
class Accentor(Bird): # 鸣禽类,继承自鸟类。
def __init__(self):
super().__init__() # 继承Bird类
pass # 拓展。
def sayHello(self):
super().sayHello() # 继承父类方法。
print(f"\n{'':>4}我是一只鸣禽。", end='')
class Thush(Accentor): # 画眉类,继承自鸣禽类。
def __init__(self, name):
super().__init__() # 继承Accentor类
self.name = name # 拓展。
def sayHello(self):
super().sayHello() # 继承父类方法。
print(f"我是{self.name},是一只画眉鸟。")
class Lark(Accentor): # 百灵类,继承自鸣禽类。
def __init__(self, name):
super().__init__() # 继承Accentor类
self.name = name # 拓展。
def sayHello(self):
super().sayHello() # 继承父类方法。
print(f"我是{self.name},是一只百灵鸟。")
class Raptor(Bird): # 猛禽类。
def __init__(self):
super().__init__() # 继承Accentor类
pass # 拓展。
def sayHello(self):
super().sayHello() # 继承父类方法。
print(f"\n{'':>4}我是一只猛禽。", end='')
class Eagles(Raptor): # 鹰类,继承自猛禽类。
def __init__(self, name):
super().__init__() # 继承Accentor类
self.name = name # 拓展。
def sayHello(self):
super().sayHello() # 继承父类方法。
print(f"我是{self.name},是一只鹰。")
class Eagle(Raptor): # 雕类,继承自猛禽类。
def __init__(self, name):
super().__init__() # 继承Accentor类
self.name = name # 拓展。
def sayHello(self):
super().sayHello() # 继承父类方法。
print(f"我是{self.name} 是一只雕。")
if __name__ == '__main__':
#b = Bird()
#b.sayHello() # 鸟类seyHello方法。
#b.fly()
#a = Accentor()
#a.sayHello() # 鸣禽类seyHello方法。
#a.fly()
#r = Raptor()
#r.sayHello() # 猛禽类seyHello方法。
#r.fly()
t = Thush('蛋蛋')
t.sayHello() # 画眉类seyHello方法。
t.fly()
l = Lark('灵儿')
l.sayHello() # 百灵类seyHello方法。
l.fly()
es = Eagles('小鹰') # 鹰类实例。
es.sayHello() # 鹰类seyHello方法。
es.fly()
e = Eagle('刁刁')
e.sayHello() # 雕类seyHello方法。
e.fly()
我的HOT博:
本次共计收集 246 篇博文笔记信息,总阅读量 40.46w,平均阅读量 1644。已生成 16 篇阅读量不小于 4000 的博文笔记索引链接。数据采集于 2023-10-12 05:41:03 完成,用时 4 分 41.10 秒。
精品文章:
来源:老齐教室
◆ Python 入门指南【Python 3.6.3】
好文力荐:
CSDN实用技巧博文: