我在python 2.7上并尝试从另一个位于同一个类中的函数调用成员函数。
class Foo:
def bar(self):
print 'correctly called'
def baz(self):
self.bar
a = Foo()
a.baz()
我经历了this问题,并按上述方式编写了一个示例类,但仍然无法打印位于函数"correctly called"
中的bar
。这可能听起来很小的菜鸟,但我认为这是调用会员功能的唯一方法,或者我做错了什么?
我想要什么
我只想从同一个类中的另一个成员函数bar
调用位于baz
函数中的print语句。
答案 0 :(得分:2)
要调用函数,请使用括号:
class Foo:
def bar(self):
print('correctly called')
def baz(self):
self.bar() # <-- ()
当您编写self.bar
时,这是一个评估函数对象的表达式。如果要将函数对象传递给map
等,这非常有用。
答案 1 :(得分:1)
使用()
:
self.bar()
self.bar
是对此对象的访问权限。需要括号来实际调用它。