今天,我想给大家介绍一下super和Tiger。是不是很有趣?突然觉得编程中的函数变得可爱了。而且这个有趣的super的使用也没有前两篇那么难,所以大家打起精神,一口气学会super。 super在调用方面的功能非常适合python初学者,我们可以先简单了解一下。
super的用法主要在Tiger和Whitetiger类中讲解。 super 用于在子类中调用父类的方法和属性。其实很多时候继承的时候super并不是必须的。这里我们只简单了解一下这个用法。
class Tiger:
def __init__(self, name, age):
self.name = name
self.age = age
def eat(self):
return "I am eating"
def myname(self):
return "my name is " + self.name
class Whitetiger(Tiger):
def __init__(self, name, age, height):
super(Whitetiger, self).__init__(name, age) # 1
self.height = height
def eatmore(self):
return super(Whitetiger, self).eat() + " more" # 2
def realname(self):
return "Actually " + super(Whitetiger, self).myname()
创建实例
wtony = Whitetiger("Tony", 10, 100)
wtony.eatmore() # 'I am eating more'
wtony.realname() # 'Actually my name is Tony'
上面有两个地方用到了
super
#2 使用super调用父类的eat方法,其实可以用self.eat调用
#1
让子类中调用父类的属性,其实相当于运行父类
_init_
函数。如果没有
#1
,则实例无法调用
name
属性;也无法调用
realname
方法,因为它用到了
name
属性。
#1
处有几种等价定义形式如下
以上就是代码示例中super的使用,小伙伴们在使用的时候注意super。调用的过程并不难,只要你在编辑代码的时候稍微小心一点。
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python时间戳是什么意思?09/13
- ♥ python安装完成后如何进入09/09
- ♥ python 中的 Protobuf 创建服务器代码01/04
- ♥ python3.6.0如何安装11/22
- ♥ in和is in python的区别12/11
- ♥ 目前有几个版本的python09/09
内容反馈