今天请各位读者朋友欣赏用 Python 实现的鲜花盛宴,你准备好了吗?90 行代码即可实现一棵美丽的鲜花盛开树。小编也是鲜花爱护协会者之一,但是想要看到美丽的花朵,得历经很多;对于知识的运用也是如此,需要不断吸收新知识,学习新技能,才能盛开出美丽的花朵。接下来就看看一棵迷人的花树是怎么实现的吧!

夏天的花

实现思路

实现思路主要是利用之前学过的 Python 绘图模块 Turtle,Turtle 详细学习课程请参考趣玩 Python 之绘制基本图形 再结合随机函数生成任意的一棵树,樱花树主要组成部分有树干和花瓣以及飘落的花瓣构成。

亭亭玉立的树干

绘画的树干使用了 Python 中的随机函数,这样每次生成的树干都是随机的,树干的选择也是随机设置参数进行调整。
示例图:

代码如下所示:

def cherryTree(branch, t):if branch > 4:# 枝干数if 7 <= branch <= 13:# 随机数生成if random.randint(0, 3) == 0:t.color('snow')  # 花瓣心的颜色else:t.color('pink')  #花瓣颜色# 填充的花瓣大小t.pensize( branch / 6)elif branch < 8:if random.randint(0, 2) == 0:t.color('snow')else:# 设置树叶颜色t.color('green')t.pensize(branch / 5)else:t.color('Peru')  # 树干颜色t.pensize(branch / 11)  #调整树干的粗细t.forward(branch)a = 1 * random.random()t.right(20 * a)b = 1 * random.random()cherryTree(branch - 10 * b, t)t.left(60 * a)cherryTree(branch - 10 * b, t)t.right(40 * 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(75)# 向前移动t.forward(a)# 放下画笔t.down()# 设置花瓣颜色t.color('pink')  # 粉红色# 画个小圆当作花瓣t.circle(1)# 提起画笔t.up()# 画笔向后退t.backward(a)# 画笔向前行t.right(70)t.backward(b)
鲜花配文字

一棵盛开的鲜花树怎么能少得了合适的文案呢?这里我们再利用小海龟绘图将文字配上

代码如下:

def des_word():t.color('LightCoral') # 字体颜色设置t.hideturtle()#  t.goto(-50, -130)t.goto(-60,-170)t.pu()t.write('姹紫嫣红桃花笺,',move=False, align='center', font=('Arial', 20, 'normal'))t.pd()t.pu()#  t.goto(90, 130)t.goto(150,-170)t.write('繁花似锦为君妍', move=False, align='center', font=('Arial', 20, 'normal'))t.pd()
画笔样式调整
t = turtle.Turtle()
# 画布大小 获取到屏幕
w = turtle.Screen()
t.hideturtle()  # 隐藏画笔
t.getscreen().tracer(8, 0)  # 获取屏幕大小
w.screensize(bg='LightCyan')  # 设置屏幕背景颜色
t.left(80)
t.up()
t.backward(140)
t.down()
t.color('sienna')
cherryTree(50, t)
petal(300, t)
最终结果

至此,清风徐来,繁花已开!

Python 小技之繁花盛开相关推荐

  1. Python 小技之繁花曲线

    Python 小技之繁花曲线 前几天逛朋友圈的时候,无意间刷到同学这样一条内容: 不知道大家有没有眼熟的感觉,反正是勾起了我不少回忆. 这种叫做"万花尺"的小玩意儿小时候应该不少人 ...

  2. Python 小技之实现的鲜花盛宴,你准备好了吗?

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:派森酱 PS:如有需要Python学习资料的小伙伴可以加点击下方链接 ...

  3. Python小技 繁花盛开

    实现思路主要是利用 Python 绘图模块 Turtle 再结合随机函数生成任意的一棵树, 樱花树主要组成部分有树干和花瓣以及飘落的花瓣构成. import turtle import random ...

  4. python canvas画弧度_Python 小技之繁花曲线

    前几天逛朋友圈的时候,无意间刷到同学这样一条内容: 朋友圈截图 不知道大家有没有眼熟的感觉,反正是勾起了我不少回忆. 这种叫做"万花尺"的小玩意儿小时候应该不少人都玩过.一个大圆套 ...

  5. Python小技 不到100行代码制作各种证件照

    生活中经常需要使用各种版本的电子版证件照,如:红底.蓝底.白底.一寸.两寸等等. 在 Python 中替换图片背景色可以用 Image 模块, 利用 Image 模块可以改变图片大小.背景色等操作. ...

  6. python绘制繁花曲线代码_使用python和pygame绘制繁花曲线的方法

    前段时间看了一期<最强大脑>,里面各种繁花曲线组合成了非常美丽的图形,一时心血来潮,想尝试自己用代码绘制繁花曲线,想怎么组合就怎么组合. 真实的繁花曲线使用一种称为繁花曲线规的小玩意绘制, ...

  7. 繁花盛开的夏天读后感

    繁花盛开的夏天读后感 作者:烟罗 方柯和南玄"从校服到婚纱"的纯美爱恋故事.一个是黑暗里开出的洁白小花,一个是黑暗里隐隐燃烧的沉默邪火.在开满紫色鼠尾草与白色桔梗花的夏栖镇,他们隐 ...

  8. Python炫技操作:花式导包的八种方法

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 五岳寻仙不辞远,一身好入名山游. ...

  9. python3经典小程序代码_一个可以套路别人的python小程序实例代码

    python可以开发什么?谁有python小程序的源代码,...桌面程序,web都可以,还有比如现在讲的多的人工智能,神经网络源码可以去找一些开源代码,搜索一下,蛮多的. 分享python小程序代码练 ...

最新文章

  1. 吹灭蛋糕上蜡烛的节能小车
  2. “undefined reference to JNI_GetCreatedJavaVM”和“File format not recognized”错误原因分析...
  3. 双击“本地连接”打不开无反应的解决方法
  4. 扩展thinkphp5的redis类方法
  5. .net core上 K8S(七).netcore程序的服务发现
  6. 机械加工工艺师手册_机械加工中车、刨、铣、镗、磨、钻、线切割等设备,你知道哪些?...
  7. 《Spark大数据分析实战》——第2章Spark开发与环境配置
  8. java 替换所有中文_java 替换中文
  9. 体表面积在线计算机,体表面积计算器
  10. Windows 10 微软拼音输入法无法输入中文标点符号
  11. 还在使用Window原始的CMD界面?教你一招进行界面完美优化
  12. python查文章字数
  13. 除了提升听感,鲸云音效对网易云音乐还意味着什么?
  14. 文件上传利器SWFUpload使用
  15. 微博粉丝精灵_天猫精灵“布蕉绿”新品上线,解锁智能音箱潮流新玩法!
  16. Flink的“前世今生”
  17. 谈谈Android里的Context的使用!!!
  18. MR过程和Shuffle详解
  19. KNN(四)--FLANN库介绍及其应用
  20. 【无标题】关于Java——给即将开学的弟弟送上一份礼物

热门文章

  1. JavaWeb - 小米商城:登录与退出
  2. rails中使用rjs
  3. 网络舆情风险评估工作有效做好的实施方案
  4. 虚拟机CentOS6.5修改静态IP(NAT模式)+报错:Bringing up interface eth0:  Error: Unknown connection
  5. ply补全为立方体_PLY文件格式及其解析 | 学步园
  6. 部分HP笔记本无法使用GHOST软件解决方法
  7. 邮件服务器怎么填,如何配置邮箱客户端?
  8. kubernetes节点减容与扩容
  9. window系统 任务计划程序
  10. java中echat如何动态_ECharts Java 动态加载数据