我已经以下代码:staticmethod和递归?
class Foo(object):
def __init__(self):
baz=self.bar(10)
@staticmethod
def bar(n):
if n==0:
return 'bar'
else:
return bar(n-1)
bar()的,因为它需要本身参考递归函数。但是,bar()在类中,调用return bar(n-1)
将不起作用,调用NameError: global name 'bar' is not defined
。我该如何处理这种情况?我是否应该将bar()更改为类或实例方法,从而允许访问self
或cls
?
在递归调用帮助中调用'Foo.bar(n-1)'吗? – inspectorG4dget