class A(object):

    def f(self, x, func=None):
        if func is None:
            func = A.f
print(x, end=' ')
if x < 0:
    func(self, x + 1, func)
if x > 0:
    func(self, x - 1, func)
if x == 0:
    print('')


class B(A):

    def f(self):
        super(B, self).f(25)
if __name__ == '__main__':
    A().f(5)
B().f()
переопределить рекурсивный метод в python