Python 为什么这个函数没有';t返回变量

Python 为什么这个函数没有';t返回变量,python,python-3.x,methods,Python,Python 3.x,Methods,这个类有一个函数name,它应该返回狗的名字(“Boby”,在下面的例子中) 但它返回的却是: <bound method Dog.name of <__main__.Dog object at 0x0000000002DD4748>> 我做错了什么? pet.name是您的方法 pet.name()是对方法的调用 因此,在这里,您需要添加括号来调用名称方法: >>> pet = Dog("Boby", 45) >>> prin

这个类有一个函数
name
,它应该返回狗的名字(
“Boby”
,在下面的例子中)

但它返回的却是:

<bound method Dog.name of <__main__.Dog object at 0x0000000002DD4748>>

我做错了什么?

  • pet.name
    是您的方法
  • pet.name()
    是对方法的调用
因此,在这里,您需要添加括号来调用
名称
方法:

>>> pet = Dog("Boby", 45)
>>> print(pet.name()) # Parentheses after pet.name
Boby
  • pet.name
    是您的方法
  • pet.name()
    是对方法的调用
因此,在这里,您需要添加括号来调用
名称
方法:

>>> pet = Dog("Boby", 45)
>>> print(pet.name()) # Parentheses after pet.name
Boby

你需要给它打电话。pet.name()您需要调用它。pet.name()就是这样。我需要等11分钟才能把它标记为答案。有关于打印错误的解释吗?没问题:)我添加了解释。我的意思是,我不理解“绑定方法Dog.name of..”。我不确定这是否是一个错误,或者实际上是指令print(pet.name)打印的内容。这不是一个错误。这就是当你打印一个方法时所发生的事情。就是这样。我需要等11分钟才能把它标记为答案。有关于打印错误的解释吗?没问题:)我添加了解释。我的意思是,我不理解“绑定方法Dog.name of..”。我不确定这是否是一个错误,或者实际上是指令print(pet.name)打印的内容。这不是一个错误。这正是当你打印一个方法时所发生的事情。