美文网首页
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