2019.12.26 绘制五角星与分型树

  1. 前言:这是Python的第二个入门示例——五角星绘制与分型树的绘制,这里主要是使用循环函数与递归的函数
  2. 下述是示例的最终版本,相关小知识点有:
    ①turtle库的调用
    ②重复的操作封装函数重复调用
    ③呈上Turtle库→turtle
"""
    功能:五角星绘制_递归函数的封装
    版本:3.0
    日期:12.28.2019
"""
import turtle
def draw_recursive_pentagram(size):
    """
        迭代绘制五角星
    """
    count = 1
    while count <= 5:
        turtle.forward(size)
        turtle.right(144)
        count += 1
    #五角星绘制结束
    size +=10
    if size <= 100:
        draw_recursive_pentagram(size)


def main():
    """
        主函数
    """
    turtle.penup()
    turtle.backward(200)
    turtle.pendown()
    turtle.pensize(2)
    turtle.pencolor('red')

    size = 100
    draw_recursive_pentagram(size)
    turtle.exitonclick()

if __name__ =='__main__':
    main()
"""
    功能:绘制分型树(fractal tree)_递归函数的应用
    版本:4.0
    日期:12.29.2019
"""
import turtle

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

        #绘制左侧树枝
        turtle.left(40)
        print('左转40')
        draw_branch(branch_lenth - 15)
        print('向后',branch_lenth)
        #返回之前的树枝上
        turtle.right(20)
        turtle.backward(branch_lenth)

def main():
    """
        主函数
    """
    #实参传入初始的树枝的长度
    turtle.left(90)
    turtle.penup()
    turtle.backward(150)
    turtle.pendown()

    draw_branch(100)
    turtle.exitonclick()

if __name__ =='__main__':
    main()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值