【发布时间】:2017-01-12 17:50:05
【问题描述】:
我只是想编写如何使用super 和__new__ 的代码。代码如下:
class Person(object):
def __new__(cls, name, age):
print('__new__called')
return super(Person, cls).__new__(cls, name, age)
def __init__(self, name, age):
print('__init__called')
self.name = name
self.age = age
def __str__(self):
return('<Person:%s(%s)>'%(self.name, self.age))
if __name__ == '__main__':
piglei = Person("piglei", 24)
print(piglei)
Python 提出了一个 TypeError 并说明了第 4 行 object() takes no parameters。
【问题讨论】:
标签: python python-3.x class