Turtle|【Turtle系列】2022年春天限定(“樱你而来”带着喜欢的人一起去看一场粉色浪潮吧~)

前言

【Turtle|【Turtle系列】2022年春天限定(“樱你而来”带着喜欢的人一起去看一场粉色浪潮吧~)】春 日 赏 花 樱 满 ? 带 着 喜 欢 的 人 一 起 去 吧!——栗子君
(当然最近疫情比较严重大家还是等疫情过去了再出门哈!)
春光正好,我们一起来赏花吧~前几天小编刚刚去看了樱花呢!文末可见源码啦!
Turtle|【Turtle系列】2022年春天限定(“樱你而来”带着喜欢的人一起去看一场粉色浪潮吧~)
文章图片


和煦的春风吹走了白雪皑皑吗,吹来了“千树万树桃花开”
粉嫩的桃花、抽芽的柳枝,探头的小草、野餐的孩子。你,一定也感受到春天了吧!

Turtle|【Turtle系列】2022年春天限定(“樱你而来”带着喜欢的人一起去看一场粉色浪潮吧~)
文章图片

今天小编给大家用代码绘制了春天樱花开花的场景啦,足不出门也能欣赏到~
正文 本文的代码很简单,会Turtle就可以啦
1)代码展示
import turtle from random import random from random import randint def draw_petal(turtle_obj, flower): # 绘制掉落的花瓣 for i in range(int(flower)): # 有正有负就可以让画笔往二个方向走 x = flower - 4 * flower * random() # 花瓣整体宽度(-10, 10) y = 10 - 20 * random() # 提笔,向前y,左转90,走x,落笔 turtle_obj.penup() turtle_obj.forward(y) turtle_obj.left(90) turtle_obj.forward(x) turtle_obj.pendown() # 珊瑚色 turtle_obj.pencolor("lightcoral") # 画圆 turtle_obj.circle(1) # 回到起点 # 提笔,后退x,右转90,后退y,落笔 turtle_obj.penup() turtle_obj.backward(x) turtle_obj.right(90) turtle_obj.backward(y) turtle_obj.pendown() # 画树枝部分 def draw_tree(turtle_obj, branch, tree_color): # 设置一个最小分支长度 min_branch = 4 if branch > min_branch: if branch < 8: # 以0.5的概率,向左、右分支 if randint(0, 1) == 0: # 左为白色 turtle_obj.pencolor("snow") else: # 右为珊瑚色 turtle_obj.pencolor("lightcoral") # 枝干 turtle_obj.pensize(branch / 2) elif 8 <= branch <= 16: # 以0.33的概率,分为左、中、右分支 if randint(0, 2) == 0: # 左为白色 turtle_obj.pencolor("snow") else: # 中、右为珊瑚色 turtle_obj.pencolor("lightcoral") # 树枝 turtle_obj.pensize(branch / 4) else: # 褐色 turtle_obj.pencolor(tree_color) # 细枝 turtle_obj.pensize(branch / 10) # 最开始的树干长度 turtle_obj.forward(branch) # 随机度数因子 a = 1.5 * random() # 顺时针旋转随机角度(0~30度) turtle_obj.right(20 * a) # 随机长度因子 b = 1.5 * random() # 往右画,直到画不动为止 draw_tree(turtle_obj, branch - 10 * b, tree_color) # 左转随机角度 turtle_obj.left(40 * a) # 往左画,直到画不动位置 draw_tree(turtle_obj, branch - 10 * b, tree_color) # 右转一定角度 turtle_obj.right(20 * a) # 提笔 turtle_obj.penup() # 递归结束回到起点 turtle_obj.backward(branch) turtle_obj.pendown() def get_screen(width, height, color, speed): # 创建画幕 screen_obj = turtle.Screen() # 画布大小:(width, height),颜色:color screen_obj.screensize(width, height, bg=color) screen_obj.setup(1.0, 1.0) # speed倍加速 screen_obj.tracer(speed) return screen_obj def tree(tree_num): # 颜色 color = ['brown', 'tan', 'black'] for j in range(tree_num): # 树干颜色 tree_color = color[randint(0, len(color) - 1)] # 画笔大小 pensize = randint(2, 5) # 前进像素 forward = ((-1) ** pensize) * pensize * randint(20, 50) # 后退像素 if pensize <= 3: backward = ((-1) ** pensize) * (5 - pensize) * randint(10, 15) else: backward = pensize * randint(45, 50) # 创建画笔 turtle_obj = turtle.Turtle() # 画笔粗细 turtle_obj.pensize(pensize) # 提笔,向前forward,左转90,backward,落笔 turtle_obj.penup() turtle_obj.forward(forward) turtle_obj.left(90) turtle_obj.backward(backward) turtle_obj.pendown() # 画笔颜色:褐色 turtle_obj.pencolor(tree_color) # 枝干粗细 branch = pensize * 15 # 落花数 flowers = branch # 第j棵树 draw_tree(turtle_obj, branch, tree_color) # 花瓣 draw_petal(turtle_obj, flowers) if __name__ == '__main__': # 创建画幕 my_screen_width = 800 my_screen_height = 600 my_screen_color = 'wheat' my_screen_speed = 5 my_screen_obj = get_screen(my_screen_width, my_screen_height, my_screen_color, my_screen_speed) # 樱花树 # 棵数 my_tree_num = 5 trees(my_tree_num) # 点击关闭画布 my_screen_obj.exitonclick()

2)效果展示 Turtle|【Turtle系列】2022年春天限定(“樱你而来”带着喜欢的人一起去看一场粉色浪潮吧~)
文章图片

番外樱花
Turtle|【Turtle系列】2022年春天限定(“樱你而来”带着喜欢的人一起去看一场粉色浪潮吧~)
文章图片

源码一起打包的啦~记得找我拿都是免费滴!放心啦~
总结 仙姿摇曳花枝俏,娉娉袅袅袂飘摇。
娇樱盼春三日笑,花容人面魂欲烧。——《咏樱花》
Turtle|【Turtle系列】2022年春天限定(“樱你而来”带着喜欢的人一起去看一场粉色浪潮吧~)
文章图片

?完整的素材等:滴滴我吖!或者点击文末自取免费拿的哈~
往期推荐阅读—— 项目0.1【情人节快乐】“我还是很喜欢你就像sin2a+cos2a 始终如一”(附表白代码)
项目0.4Python教程:去除背景,我保证不动她一根头发(附多种方式)
项目0.5【视频倒放神器】超级玩法:千万不要倒放视频,太魔性了根本停不下来......
项目0.6【Python小程序】隐藏表白图:“你永远都不知道我喜欢你”(建议保存)
还有更多更多源码等你来领区啦!
文章汇总—— 汇总: Python文章合集 | (入门到实战、游戏、Turtle、案例等)
(文章汇总还有更多你案例等你来学习啦~源码找我即可免费!)

    推荐阅读