美文网首页
Python初学笔记之分形树(递归调用)

Python初学笔记之分形树(递归调用)

作者: 啰嗦ing | 来源:发表于2019-02-25 16:14 被阅读19次

Python画分形树,主要用递归来实现,更方便的理解递归运行方式。
废话不多说,直接上代码

import turtle


def draw_branch(branch_length):
    '''
    绘制分形树
    '''
    # print("kaishi长度 ", branch_length)
    if branch_length > 2:
        # 绘制右侧树枝
        turtle.forward(branch_length)
        # print("向前", branch_length)
        turtle.right(20)
        # print("右转20")
        draw_branch(branch_length - 10)

        # 绘制左侧树枝
        turtle.left(40)
        # print("长度 ",branch_length)
        draw_branch(branch_length - 10)

        # 返回之前的树枝
        turtle.right(20)
        # print("向右20")
        turtle.backward(branch_length)
        # print("回退", branch_length)


def main():
    """
    主函数
    """
    turtle.left(90)
    turtle.pencolor('brown')
    turtle.penup()
    turtle.backward(150)
    turtle.pendown()
    turtle.speed(0)
    draw_branch(90)
    turtle.exitonclick()


if __name__ == "__main__":
    main()
最终效果图

有任何疑问欢迎沟通

相关文章

网友评论

      本文标题:Python初学笔记之分形树(递归调用)

      本文链接:https://www.haomeiwen.com/subject/kxygyqtx.html