__init__在python中为类编写函数时,应始终调用
__init__其超类的函数。我们可以使用它直接将相关属性传递给超类,因此您的代码如下所示:
class Person(object): def __init__(self, name, phone): self.name = name self.phone = phoneclass Teenager(Person): def __init__(self, name, phone, website): Person.__init__(self, name, phone) self.website=website
正如其他人指出的那样,您可以替换该行
Person.__init__(self, name, phone)
与
super(Teenager, self).__init__(name, phone)
并且代码将执行相同的 *** 作。这是因为python
instance.method(args)只是的简写
Class.method(instance,args)。如果要使用
super,需要确保将其指定
object为基类,
Person就像我在代码中所做的那样。
在Python文档有关于如何使用的详细信息
super关键字。在这种情况下,重要的是,它告诉Python来看看该方法
__init__在超类的
self,是不是
Teenager
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)