找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 1752|回复: 0

[求助] 采用递归函数制作分型树图

1

主题

1

帖子

1

积分

贫民

积分
1
wx_tNJ0X9lx 发表于 2019-1-14 23:18:05 | 显示全部楼层 |阅读模式
题主在学习良斌老师的pytho教程时,遇到了采用递归函数绘制分型树的问题。虽然采用递归函数可以绘制出分型树,但是对于递归函数部分的代码,百思不得其执行过程,即使采用debug,也搞不懂为何程序会如此走向。请教大神帮忙解答。下面是最小的分型树的代码。
"""
    作者:梁斌
    功能:利用递归函数绘制分形树
    版本:1.0
    日期:03/08/2017
"""
import turtle


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

        # 绘制左侧树枝
        turtle.left(40)
        print('左转 40')
        draw_branch(branch_length - 15)

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


def main():
    """
        主函数
    """
    turtle.left(90)
    turtle.penup()
    turtle.backward(350)
    turtle.pendown()
    turtle.color('brown')
    draw_branch(36)
    turtle.exitonclick()

if __name__ == '__main__':
    main()

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表