python的听课笔记案例2--分形树草图3.0

原创
小哥 3年前 (2022-11-02) 阅读数 8 #大杂烩

上一次,使用函数使代码变得简单得多,但仍然不够。这一次,我想谈谈如何将函数和循环放在一起,并引入递归函数的概念:

绘制函数的形状,更新参数,然后将更新后的参数添加到函数中,调用自己的函数。

"""
    作者:lanxingbudui
    功能:绘制五角星
    版本:3.0
    日期:20190227
    增强:增加循环操作,绘制不同大小的重复图形。
    增强功能:将函数与循环结合,使用递归函数
"""
import turtle

def draw_recursive_pentagram(size):
    """
       递归函数绘制五角星
    """
    count = 0
    while count < 5:
        turtle.forward(size)
        turtle.right(144)
        count += 1
    size += 20
    if size <= 200:
        draw_recursive_pentagram(size)

def main():
    """
        主函数
    """
    turtle.pencolor(red)
    turtle.pensize(2)
    size = 100
    draw_recursive_pentagram(size)
    # 点击鼠标退出
    turtle.exitonclick()

if __name__ == __main__:
    main()

瞬间主函数变得无比简单了,一行参数赋值,一行调用函数,两行代码就能绘制重复不同大小的五角星了。

递归函数(迭代函数)的逻辑:

1,程序首先运行。while状态,画一个五角星

2,参数增加

3,判断是否一致if条件

4,满足条件,调用自己的函数,使用新的参数值。

版权声明

所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除