首页 / 知识
python可以继承父类方法吗
2023-11-12 13:02:00
python继承,调用父类属性方法
在python里面,继承一个类只需要这样写:
classAnimal:
defheshui(self):
print('动物正在喝水')
classCat(Animal):
pass
这样Cat就有了Animal的所有属性和方法,调用的时候直接调用就可以了:
#接上面代码
cat=Cat()
cat.heshui()
>>>动物正在喝水
这个时候,如果子类想重写父类的方法,可以直接重写:
classAnimal:
defheshui(self):
print('动物正在喝水')
classCat(Animal):
defheshui(self):
print('猫正在喝水')
cat=Cat()
cat.heshui()
>>>猫正在喝水
如果想调用父类的heshui这个方法,可以用super():
classAnimal:
defheshui(self):
print('动物正在喝水')
classCat(Animal):
defheshui(self):
super().heshui()
cat=Cat()
cat.heshui()
>>>动物正在喝水
强制调用父类私有属性方法
如果父类的方法是私有方法,如def__heshui(self)这样的话再去调用就提示没有这个方法,其实编译器是把这个方法的名字改成了_Animal__heshui(),如果强制调用,可以这样:
classAnimal:
def__heshui(self):
print('动物正在喝水')classCat(Animal):
defheshui(self):
super()._Animal__heshui()
cat=Cat()
cat.heshui()>>>动物正在喝水
最后,如果自己也定义了__init__方法,那么父类的属性是不能直接调用的:
classAnimal:
def__init__(self):
self.a='aaa'
classCat(Animal):
def__init__(self):
pass
cat=Cat()
print(cat.a)
>>>AttributeError:'Cat'objecthasnoattribute'a'
那么可以在子类的__init__中调用一下父类的__init__方法,这样就可以调用了:
classAnimal:
def__init__(self):
self.a='aaa'classCat(Animal):
def__init__(self):
super().__init__()#也可以用Animal.__init__(self)这里面的self一定要加上
cat=Cat()
print(cat.a)>>>aaa
以上内容为大家介绍了python培训之可以继承父类方法吗,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注我们
最新内容
相关内容
python怎么调用类方法
python怎么调用类方法,培训,方法,实例,静态,定义,参数,属性,对象,关键字,以上,python中的类用来描述具有相同的属性和方法的对象的集合。它定python判断字符串是否为小数的方法
python判断字符串是否为小数的方法,培训,代码,合法,小数点,小数,整数,字符串,方法,右边,左边,python想判断一个字符串是不是一个合法的小数,但python字符串拼接有哪些方法?
python字符串拼接有哪些方法?,培训,一致,字符串,位置,异常,结果,方式,方法,字符,参数,python拼接字符串一般有以下几种方法:①直接通过(+)操作python创建多线程的两种方法
python创建多线程的两种方法,培训,第一,代码,业务,方法,线程,函数,任务,演示,实例,当我们使用python编程的过程中需要多个输出的任务的话,为了python99乘法表代码
python99乘法表代码,代码,基础,培训,空格,字符串,结果,初学者,实例,后面,以上,python99乘法表代码1、说明字符串之间才能相加,所以输出结果的python美元转换成人民币转换代码
python美元转换成人民币转换代码,人民币,美元,代码,货币,培训,表示,小数点,空格,数值,符号,python美元转换成人民币转换代码1、说明程序可以python有哪些大小写转换方法
python有哪些大小写转换方法,培训,字符串,方法,字符,字母,大写字母,大小写,长度,单词,大小,python中有哪些大小写转换方法1、lower()方法,大写python创建新线程有哪些方法
python创建新线程有哪些方法,培训,方法,线程,对象,测试,实例,以上,参数,教程,更多,python创建新线程有哪些方法1、方法(1)直接创建threading.python如何自定义元类
python如何自定义元类,地方,培训,定义,过程,方法,其他地方,实例,属性,声明,以上,python如何自定义元类1、说明一个类没有声明自己的元类,默认picture元素定义分享
picture元素定义分享,picture,元素,定义,分享,HTMLpicture,元素,实例,, HTML<picture>元素 实例 根据屏幕匹配的不同尺寸显示不有关thead标签定义
有关thead标签定义,有关,thead,标签,定义,HTMLthead,标签,实例,带有,, HTML<thead>标签 实例 带有<thead>、<tfoot>和<tbody>元jdk没有jre的解决方法
jdk没有jre的解决方法,jdk,没有,jre,的,解决,方法,安,装的,jdk,没有,jre,,安装的jdk没有jre(JDK11以上版本)我猜你安装后的jdk目录大