有意思的python小程序分享——使用python画一棵樱花树

有意思的python小程序分享——使用python画一棵樱花树

简介

使用python绘制樱花树

有趣的Python小程序分享——用Python画樱花树

绘制樱花树的代码主要利用了Python的turtle模块,通过递归的方式实现了树的结构,包括树干和分支。以下是绘制樱花树代码的编写思路:

  1. 导入必要的模块:

    from turtle import *
    from random import *
    from math import *
    
  2. 定义绘制树的函数tree

    def tree(n, l):
        pd()  # 下笔
        t = cos(radians(heading() + 45)) / 8 + 0.25
        pencolor(t, t, t)
        pensize(n / 3)
        forward(l)
    
        if n > 0:
            b = random() * 15 + 10
            c = random() * 15 + 10
            d = l * (random() * 0.25 + 0.7)
            right(b)
            tree(n - 1, d)
            left(b + c)
            tree(n - 1, d)
            right(c)
        else:
            # 叶子的绘制部分
            right(90)
            n = cos(radians(heading() - 45)) / 4 + 0.5
            pencolor(n, n * 0.8, n * 0.8)
            circle(3)
            left(90)
    
            if random() > 0.7:
                # 飘落的叶子
                pu()
                t = heading()
                an = -40 + random() * 40
                setheading(an)
                dis = int(800 * random() * 0.5 + 400 * random() * 0.3 + 200 * random() * 0.2)
                forward(dis)
                setheading(t)
                pd()
                right(90)
                n = cos(radians(heading() - 45)) / 4 + 0.5
                pencolor(n * 0.5 + 0.5, 0.4 + n * 0.4, 0.4 + n * 0.4)
                circle(2)
                left(90)
                pu()
                t = heading()
                setheading(an)
                backward(dis)
                setheading(t)
        pu()
        backward(l)
    
  3. 设置画布背景色等初始化操作:

    bgcolor(0.5, 0.5, 0.5)
    ht()
    speed(0)
    tracer(0, 0)
    pu()
    backward(100)
    left(90)
    pu()
    backward(300)
    
  4. 调用绘制树的函数:

    tree(12, 100)
    
  5. 结束turtle绘图:

    done()
    

这段代码的核心是tree函数,通过递归方式绘制树的结构,其中涉及到随机数的运用,使得每棵树都具有差异性。在绘制叶子的部分,通过一些数学计算和颜色的调整,实现了樱花叶子的效果,包括飘落的樱花。整个代码充分展现了Python在图形绘制方面的灵活性和创造性。

运行效果展示

双击python小程序

在这里插入图片描述

在这里插入图片描述

获取方式

关注微信公众号,极客李华,回复python小程序即可获得
请添加图片描述

在这里插入图片描述

如果大家觉得有用的话,可以关注我下面的微信公众号,极客李华,我会在里面更新更多行业资讯,企业面试内容,编程资源,如何写出可以让大厂面试官眼前一亮的简历等内容,让大家更好学习编程,我的抖音,B站也叫极客李华。大家喜欢也可以关注一下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

极客李华

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值