Python class类的派生与继承详解
Python 中定义一个类派生自另一个类的语法如下:
class 派生类名(基类名):
数据成员声明 1
数据成员声明 N
基类 BaseClassName 必须与派生类 DerivedClassName 定义在同一个作用域内。如基类来自不同的模块,可以在类名前添加模块名。在定义派生类时可以重写基类的方法。例如:
class Animal: name = def Speak(self): pass class Cat(Animal): name = 狗 def Speak(self): print ( 喵~喵~喵~ ) class Human(Animal): name = 人 def Speak(self): print ( 你好~ ) c = Cat() c.Speak() h = Human() h.Speak()
上述代码的运行结果如下所示:
class Animal:
name =
def Speak(self):
pass
class Cat(Animal):
name = 狗
def Speak(self):
print ( 喵~喵~喵~ )
class Human(Animal):
name = 人
def Speak(self):
print ( 你好~ )
c = Cat()
c.Speak()
喵~喵~喵~
h = Human()
h.Speak()
你好~
Python 支持有限的多重继承,其语法为:
class 派生类名(基类1, 基类2, , 基类N):
数据成员声明 1
数据成员声明 N
需要注意小括号中父类的顺序,若是父类中有相同的方法名,而在子类使用时未指定,Python 将按照从左至右的顺序在这些父类中查找该方法。例如:
class Animal: name = def Speak(self): pass class Cat(Animal): name = 狗 def Speak(self): print ( 喵~喵~喵~ ) class Human(Animal): name = 人 def Speak(self): print ( 你好~ ) class Actor(Human, Cat): name = 演员 def Speak(self): Human.Speak(self) Cat.Speak(self) a = Actor() a.Speak()
以上代码的运行结果如下所示:
class Animal:
name =
def Speak(self):
pass
class Cat(Animal):
name = 狗
def Speak(self):
print ( 喵~喵~喵~ )
class Human(Animal):
name = 人
def Speak(self):
print ( 你好~ )
class Actor(Human, Cat):
name = 演员
def Speak(self):
Human.Speak(self)
Cat.Speak(self)
a = Actor()
a.Speak()
你好~
喵~喵~喵~
23768.html
python相关文章
- python re.compile() 详解——Python正则表达式「建议收藏」
- Python怎么输入小数和整数_python输入非负整数
- python常用面试题_Python+Selenium 常见面试题整理[通俗易懂]
- python爬虫—–Python访问http的几种方式「建议收藏」
- matlab wavedec2 函数,python小波变换 wavedec2函数 各个返回值详解
- RStudio 改名 Posit,为了体现对 Python 和 VS code 社区的支持
- 【说站】python json保存数据的方法
- Python实现自动回复_python 微信机器人
- python发邮件详解,smtplib和email模块详解
- Python 生成随机数_python建立随机数列表
- python设置时间过期改变状态_Python Redis设置过期时间「建议收藏」
- python-Python与MySQL数据库-使用Python执行MySQL查询
- 小白的Python之路 day5 python模块详解及import本质编程语言
- Python学习:6.python内置函数详解编程语言
- Python 基于python实现的http+json协议接口自动化测试框架源码(实用改进版)详解编程语言
- python子类如何继承父类的实例变量详解编程语言
- python之类之多继承详解编程语言
- python之面向对象之继承详解编程语言
- Python玩转Redis:提升缓存效率(python使用redis)
- 运维学python之爬虫基础篇(三)urllib模块高级用法
- Python爬取MySQL数据,助力数据分析(python读取mysql数据)
- Python与Linux:开启互联网信息技术时代(python和linux)
- Linux下从系统卸载Python(linux下卸载python)
- Python与MySQL实现数据分析的完美组合(mysql中python)