Discuss / Python / 为什么要加else

为什么要加else

Topic source

if else 一起可以确定终止递归的情况,防止无限递归下去

不用else的话可以用return,同样可以中断函数,终止递归,return是常用于递归函数的语句

用return的写法:

def move(n, a, b, c):
    if n == 1:
        print(a, '-->', c)
        return    
    move(n-1, a, c, b)
    print(a, '-->', c)
    move(n-1, b, a, c)

move(3, 'A', 'B', 'C')
def move(n, a, b, c):    if n == 1:        print(a, '-->', c)        return    move(n-1, a, c, b)    print(a, '-->', c)    move(n-1, b, a, c)move(3, 'A', 'B', 'C')
def move(n, a, b, c):
    if n == 1:
        print(a, '-->', c)
        return    move(n-1, a, c, b)
    print(a, '-->', c)
    move(n-1, b, a, c)

move(3, 'A', 'B', 'C')
def move(n, a, b, c):
    if n == 1:
        print(a, '-->', c)
        return    
move(n-1, a, c, b)
    print(a, '-->', c)
    move(n-1, b, a, c)

move(3, 'A', 'B', 'C')
def move(n, a, b, c):
    if n == 1:
        print(a, '-->', c)
        return    
    move(n-1, a, c, b)
    print(a, '-->', c)
    move(n-1, b, a, c)

move(3, 'A', 'B', 'C')

def move(n, a, b, c):
    if n == 1:
        print(a, '-->', c)
        return    
  move(n-1, a, c, b)
    print(a, '-->', c)
    move(n-1, b, a, c)

move(3, 'A', 'B', 'C')

  • 1

Reply