什么<bound method =“”person.get_name =“”of =“”<__ main __。person =“”object =“”at =“”0x02887790 =“”>&gt;意思

时间:2015-10-31 15:01:34

标签: python python-2.7

只是想知道为什么我的程序中出现此错误。 有点新的python和Stackoverflow,我在其他地方看到了一种绑定方法错误,但不太明白。

class person(object):

    def get_name(self):

        self.name=raw_input("what is your name?")
        ans=raw_input("your name is %s right?" %self.name)



        while ans=="no":
            name=raw_input("sorry about that what is your name then?")
            ans="yes"
        else:
            print ("nice to have you %s !!" %self.name)

bob= person()
bob.get_name()

print bob.get_name

2 个答案:

答案 0 :(得分:1)

这不是错误;它只是bob.get_name的样子(也就是说,它是你打印方法时得到的)。您可能打算打印方法的返回值,您必须为其调用它:

print bob.get_name()

(注意()。)

答案 1 :(得分:1)

您实际上并没有执行您的方法。您需要添加()来执行您的方法:

改变这个:

print bob.get_name

到这个

print bob.get_name()

&#34;绑定&#34;是什么意思?是你的方法get_name绑定到实例person

<bound method person.get_name of <__main__.person object at 0x02887790>>