Python 3.x Python—将类实例化传递给函数
我需要将类实例化传递给函数。Python 3.x Python—将类实例化传递给函数,python-3.x,Python 3.x,我需要将类实例化传递给函数。 这是我到目前为止写的: def func(dog): print(dog.get_name) def main(): new_dog = dog(name, age, weight) func(new_dog) 但当我尝试执行它时,会收到以下错误消息: <bound method animal.get_name of <classes.dog object at 0x7f9611002b70> =1: 打印(“这条狗很
这是我到目前为止写的:
def func(dog):
print(dog.get_name)
def main():
new_dog = dog(name, age, weight)
func(new_dog)
但当我尝试执行它时,会收到以下错误消息:
<bound method animal.get_name of <classes.dog object at 0x7f9611002b70>
=1:
打印(“这条狗很危险,和它玩的时候要小心!”)
#否则它就是一只安静的狗
elif int(self.\u dlevel)我发现了真正的问题:我正在打印函数,而不是调用它。
所以我用了
def func(animal):
print(animal.get_name())
def main():
new_dog = dog("max", 14, 11, "dog")
func(new_dog)
我们需要查看您定义的类,但最可能发生的情况是,dog.name
是一个函数,这就是为什么它不打印dog的名称,而是打印函数的详细信息。@Jono2906我添加了类代码您在该代码中没有设置名称的代码。我运行了您提供的代码,它似乎起作用了——我在输出中没有看到任何关于
的内容。是的,在构造函数中:self.name=name
def func(animal):
print(animal.get_name())
def main():
new_dog = dog("max", 14, 11, "dog")
func(new_dog)