Python3笔记031 - 6.6 递归函数

第6章 函数

  • 6.1 函数的定义和调用
  • 6.2 参数传递
  • 6.3 函数返回值
  • 6.4 变量作用域
  • 6.5 匿名函数(lambda)
  • 6.6 递归函数
  • 6.7 迭代器
  • 6.8 生成器
  • 6.9 装饰器

6.6 递归函数

递归就是函数自己调用自己

# 循环方式实现求和
def sum_number(n):
    total = 0
    for i in range(1, n+1):
        total += i
    return total

print(sum_number(10))
# 递归方式实现求和
def sum_number(n):
    if n <= 0:
        return 0
    return n+sum_number(n-1)

print(sum_number(10))
# 循环打印正三角星星
def digui(n):
    for i in range(n+1):
        if i != 0:
            print('*' * i)
digui(5)
# 递归打印正三角星星
def digui(n):
    if n == 0:
        return
    digui(n - 1)
    print('*' * n)
digui(5)
# 循环打印倒三角星星
def digui(n):
    for i in range(n+1):
        if i != 0:
            print('*' * n)
            n = n - 1
digui(5)
# 递归打印倒三角星星
def digui(n):
    if n == 0:
        return
    print('*' * n)
    digui(n - 1)
digui(5)
posted @ 2020-07-15 08:05  测试工匠麻辣烫  阅读(116)  评论(0编辑  收藏  举报