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

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

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

简介

使用python绘制樱花树

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

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

  1. 导入必要的模块:
from turtle import *
from random import *
from math import *
  1. 定义绘制树的函数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)
  1. 设置画布背景色等初始化操作:
bgcolor(0.5, 0.5, 0.5)
ht()
speed(0)
tracer(0, 0)
pu()
backward(100)
left(90)
pu()
backward(300)
  1. 调用绘制树的函数:
tree(12, 100)
  1. 结束turtle绘图:
done()

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

运行效果展示

双击python小程序

获取方式

关注微信公众号,极客李华,回复python小程序即可获得

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

相关文章
|
24天前
|
机器学习/深度学习 算法 搜索推荐
Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)
Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)
|
1月前
|
机器学习/深度学习 算法 数据挖掘
请解释Python中的决策树算法以及如何使用Sklearn库实现它。
决策树是监督学习算法,常用于分类和回归问题。Python的Sklearn库提供了决策树实现。以下是一步步创建决策树模型的简要步骤:导入所需库,加载数据集(如鸢尾花数据集),划分数据集为训练集和测试集,创建`DecisionTreeClassifier`,训练模型,预测测试集结果,最后通过`accuracy_score`评估模型性能。示例代码展示了这一过程。
|
5天前
|
机器学习/深度学习 算法 数据挖掘
PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享-2
PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享
28 1
|
4天前
|
机器学习/深度学习 算法 Python
数据分享|Python决策树、随机森林、朴素贝叶斯、KNN(K-最近邻居)分类分析银行拉新活动挖掘潜在贷款客户
数据分享|Python决策树、随机森林、朴素贝叶斯、KNN(K-最近邻居)分类分析银行拉新活动挖掘潜在贷款客户
23 4
|
10天前
|
机器学习/深度学习 存储 算法
PYTHON集成机器学习:用ADABOOST、决策树、逻辑回归集成模型分类和回归和网格搜索超参数优化
PYTHON集成机器学习:用ADABOOST、决策树、逻辑回归集成模型分类和回归和网格搜索超参数优化
31 7
|
10天前
|
机器学习/深度学习 数据可视化 算法
PYTHON用决策树分类预测糖尿病和可视化实例
PYTHON用决策树分类预测糖尿病和可视化实例
17 0
|
机器学习/深度学习 算法 Python
Python决策树、随机森林、朴素贝叶斯、KNN(K-最近邻居)分类分析银行拉新活动挖掘潜在贷款客户
Python决策树、随机森林、朴素贝叶斯、KNN(K-最近邻居)分类分析银行拉新活动挖掘潜在贷款客户
25 0
|
11天前
|
机器学习/深度学习 算法 Python
python在Scikit-learn中用决策树和随机森林预测NBA获胜者
python在Scikit-learn中用决策树和随机森林预测NBA获胜者
24 0
|
1月前
|
机器学习/深度学习 数据采集 算法
Python基础算法解析:决策树
Python基础算法解析:决策树
36 8
|
3月前
|
Python Java Go
Java每日一练(20230331) 最长公共前缀、改写字符串、不同的BSTII
Java每日一练(20230331) 最长公共前缀、改写字符串、不同的BSTII
36 0
Java每日一练(20230331) 最长公共前缀、改写字符串、不同的BSTII