用pyhon的turtle结合分形知识,进行樱花树的绘画,供大家研究。

代码来源在github上,Turtle/cherry tree.py at main · AXYZdong/Turtle · GitHub,大家自己下载,或拷贝粘贴下述代码。

1 代码实现

import turtle as T
import random
import time# 画樱花的躯干(60,t)
def Tree(branch, t):time.sleep(0.0005)if branch > 3:if 8 <= branch <= 12:if random.randint(0, 2) == 0:t.color('snow')  # 白else:t.color('lightcoral')  # 淡珊瑚色t.pensize(branch / 3)elif branch < 8:if random.randint(0, 1) == 0:t.color('snow')else:t.color('lightcoral')  # 淡珊瑚色t.pensize(branch / 2)else:t.color('sienna')  # 赭(zhě)色t.pensize(branch / 10)  # 6t.forward(branch)a = 1.5 * random.random()t.right(20 * a)b = 1.5 * random.random()Tree(branch - 10 * b, t)t.left(40 * a)Tree(branch - 10 * b, t)t.right(20 * a)t.up()t.backward(branch)t.down()# 掉落的花瓣
def Petal(m, t):for i in range(m):a = 200 - 400 * random.random()b = 10 - 20 * random.random()t.up()t.forward(b)t.left(90)t.forward(a)t.down()t.color('lightcoral')  # 淡珊瑚色t.circle(1)t.up()t.backward(a)t.right(90)t.backward(b)def fallingFlowers(m):x, y = -900, -400for i in range(30):t.up()t.goto(x, y)x += 100t.down()yval = 50for i in range(m):a = 100 * random.random()b = 2 * random.random()if a > 59:t.color('#FE2E9A')else:t.color('#04B486')t.circle(5)t.up()t.goto(x, y + (yval * b))t.fd(a)yval += 50t.down()# 爱心def Love(x, y):t.up()t.home()t.goto(x, y)t.pensize(4)t.color('pink', 'pink')  # 粉t.left(90)t.forward(100)t.down()t.begin_fill()t.circle(70, 230)t.forward(140)t.end_fill()t.begin_fill()t.seth(40)t.forward(135)t.right(5)t.circle(70, 235)t.end_fill()t.up()# 文字
def Font():t.penup()t.goto(-500, -300)t.pencolor('black')t.write("By AXYZdong,不一样的樱花+爱心送给不一样的你,520", font=('方正行黑简体', 30, 'normal'))# 绘图区域
t = T.Turtle()
# 画布大小
w = T.Screen()
t.hideturtle()  # 隐藏画笔
t.getscreen().tracer(5, 0)
w.screensize(1000, 800, 'wheat')  # wheat小麦
t.left(90)
t.up()
t.backward(150)
t.down()
t.color('sienna')# 画樱花的躯干
Tree(60, t)
# 掉落的花瓣
Petal(300, t)fallingFlowers(10)
# 爱心
Love(-400, 100)
Love(400, 100)
Love(-400, -150)
Love(400, -150)
# 文字
Font()
w.exitonclick()

2 参考结果

python知识:用turtle绘制樱桃树相关推荐

  1. Python中使用Turtle绘制阴阳鱼(小白的学习分享)

    Python中使用Turtle绘制阴阳鱼(小白的学习分享) 五一在家无聊,小白第一次学习绘制阴阳鱼,代码如下,请各位大神指点: #作者:Guangxu #功能:阴阳鱼的绘制 #版本:V1.0 #日期: ...

  2. Python|Python简介|安装Python解释器|运行|开发工具|Python之禅|turtle绘制五星红旗|绘制方块|绘制小猪佩奇|语言100课:学习(1)

    文章目录 源项目地址 初识Python Python简介 Python的历史 Python的优缺点 Python的应用领域 安装Python解释器 运行Python程序 确认Python的版本 编写P ...

  3. Python GUI编程(Turtle)——绘制中国五星红旗

    Python turtle绘制 国旗-五星红旗 # 中华人民共和国国旗是五星红旗,中华人民共和国的象征和标志.中华人民共和国国旗的设计者是曾联松, # 旗面为红色,长方形,其长与高为三与二之比,旗面左 ...

  4. 【python绘图库turtle实战】使用python绘图库turtle绘制:太阳花、彩虹线与小黄人【含完整源码】

    本文使用python的turtle绘制3幅图代码示例: 1.绘制太阳花 import turtle as t import time t.color("red","yel ...

  5. 【python】使用turtle绘制立体五角星

    python课上布置的憨憨作业 使用turtle绘制立体五角星 要求图形长这样 第一个三角形还是简单的,绘制五条边等距的转同角度就行 from turtle import *fillcolor( 'r ...

  6. Python实现使用turtle绘制圣诞树

    简单的绘制圣诞树 新建tree1.py或者直接输入下面代码运行 #声明树的高度 height = 5 #树的雪花数,初始为1 stars = 1 #以数的高度作为循环次数for i in range( ...

  7. Python中使用turtle绘制棋盘详解

    效果 实现 源码 import turtle #声明棋盘的单元格宽度为30,数量为18 width = 30 num = 18 #设置画布大小 turtle.screensize(1200,900,& ...

  8. python学习笔记——turtle绘制图形

    一.turtle图形绘制 # PythonDraw.py '''import turtle turtle.setup(650, 350, 200, 200) turtle.penup() turtle ...

  9. Python中使用turtle绘制多个同心圆

    效果 代码 import turtle t = turtle.Pen() my_colors = ("red","green","yellow&quo ...

最新文章

  1. Python:阳光热线问政平台爬虫
  2. 《Hadoop基础教程》之初识Hadoop
  3. qt chart 如何使网格填满整个窗口_Qt实现截屏的关键函数
  4. 设计模式复习-解释器模式
  5. 手把手教你写DI_2_小白徒手撸构造函数注入
  6. 计算机蠕虫是一个程序或程序系列,它采取截取口令并试图在系统中,计算机蠕虫病毒是一个程序或程序系列,它采取截取口令并试图在系统中做非法动作的方式直接攻击计算机。...
  7. mysql如何优化性能优化_如何优化性能?MySQL实现批量插入以优化性能的实例详解...
  8. 2021年中国云应用服务市场趋势报告、技术动态创新及2027年市场预测
  9. Qt使用QPainter实现雷达图(玫瑰图)
  10. python爬虫使用模块_10分钟教你Python爬虫(下)--爬虫的基本模块与简单的实战...
  11. np.c_和np.r_
  12. Effective C++ 条款 50:了解new和delete的合理替换时机
  13. 蓝箭航天自主研发80吨液氧甲烷发动机喷管下线
  14. 360n6pro刷鸿蒙系统,因太费电想刷系统,N6Pro哪个版本的系统耗电少,有什么问题或缺点...
  15. 蒙特卡洛方法求圆周率
  16. 题都城南庄---中华诗词-唐五代-崔护
  17. 图像分割技术与MATLAB仿真剖析
  18. PDF Explained(翻译)第七章 文档元数据和导航
  19. wFlow(CVPR2022)-虚拟试衣论文解读
  20. 4个好用的图片去水印工具,图片去水印这样做就对了

热门文章

  1. MCMC笔记:齐次马尔可夫链
  2. 深度学习核心技术精讲100篇(十六)-搜索引擎Indri系列之如何建立索引 (Indexing)检索评价 (Evaluation)
  3. 数据增强,将数据增强后保存到本地
  4. LeetCode-剑指 Offer 10- I. 斐波那契数列
  5. Python/Anaconda-python2.x代码转为python3.x代码
  6. 拿到大厂产品经理offer的应届生都是什么水平?
  7. elasticSearch6源码分析(3)cluster模块
  8. 关于VR技术和未来发展---转
  9. Adapter pattern
  10. linux shell执行方式