如果函数不是尾递归的,则需要处理显式堆栈...例如
todo = [(0, 0)] while todo: i, j = todo.pop() print "processing ", i, j if i != 3 and j != 3: todo.append((i, j+1)) todo.append((i+1, j))