5 函数的定义和调用应用实例

函数的定义和调用实例–绘制一棵树

def tree(plist, l, a, f):
    """ plist is list of pens
    l is length of branch
    a is half of the angle between 2 branches
    f is factor by which branch is shortened
    from level to level."""
    if l > 5: #设置绘制终止条件
        lst = []#变量初始化
        for p in plist:
            p.forward(l)#沿着当前的方向绘制l的距离
            q = p.clone()#克隆当前画笔
            p.left(a) #将画笔逆时针转动a度
            q.right(a)#将克隆的画笔顺时针旋转a度
            lst.append(p)#将元素增加到列表的最后
            lst.append(q)
        tree(lst, l*f, a, f)



def main():
    p = Turtle()
    p.color("green")#设置画笔颜色
    p.pensize(5)#设置画笔粗细
    p.hideturtle() #隐藏小乌龟使得绘制的图形更加清晰
    p.speed(2)#设置绘制速度
    p.left(90)#调整画笔方向,原来画笔朝着屏幕右方,逆时针旋转90度
    p.penup() #提起画笔
    p.goto(0,-200)#移动画笔到指定的坐标
    p.pendown()# 放下画笔开始绘制图形

    t = tree([p], 200, 65, 0.6375)#调用画图程序tree函数

main()#第一条执行语句,调到main函数处开始执行程序

执行之后开始绘制图形,绘制的图形如下所示,可以尝试改变一些函数的参数改变图形的形状。
这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值