我对python还不太熟悉,我在使用这一点代码时遇到了问题。我总是碰到同样的问题。运行此命令时,会收到错误消息:
TypeError: object() takes no parameters.
我已经在下面完整地包含了错误消息。
这是我的代码:
class Bird:
_type = ""
def bird(self, type):
self._type = type
def display(self):
print(self._type)
class Species:
_bird = None
_type = ""
def set_bird(self, bird):
self._bird = bird
def display(self):
print(self._type)
self._bird.display(self)
class Cardinal(Species):
def cardinal(self):
self._type = "Cardinal"
def main():
species = Cardinal()
species.set_bird(Bird("Red"))
species.display()
main()
在
Bird
类中没有__init__()
函数,因此无法编写:如果要传递这样的参数,则需要执行以下操作:
在下面,您可以看到结果:
在你的代码中,你正在做:
创建
Bird
的对象时,传递的是参数"Red"
。但是Bird
类中没有接受此参数的__init__()
函数。您的Bird
类应该如下:相关问题 更多 >
编程相关推荐