Python&七夕程序员的小浪漫一一樱花树
Posted 董不会i
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python&七夕程序员的小浪漫一一樱花树相关的知识,希望对你有一定的参考价值。
遇到喜欢的人,每天看到的东西都格外的不一样。这不七夕前一天,日常逛yao~哎不,逛B站,碰巧看到某up主投的七夕稿,竟是用Python的Turtle库画的一颗樱花树。
支持up主一下,上链接:
用Turtle库画一树浪漫的樱花吧~
再上效果图:
乍一看觉得非常有新意,而且还是动态生成的、再加上动人的背景乐《I'm Yours》
,一下就吸引住了缺乏浪漫主义的我。因此决定复现一下,稍加改动送给那个她。
使用PyCharm
编写代码,代码不算复杂,想了解代码细节的可以参考官方的Turtle库.
项目目录:
一个.py
文件和一个.mp3
背景音乐文件资源即可,文末有网盘资源。
源码如下:
import turtle as T
import random
import time
import pygame
# 获取背景音乐文件
file = r'Im_Yours.mp3'
pygame.mixer.init()
track = pygame.mixer.music.load(file)
pygame.mixer.music.play() # 播放
# 画樱花的躯干(60,t)
def Tree(branch, t):
time.sleep(0.01)
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) # 6
t.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)
# 绘图区域
t = T.Turtle()
# 画布大小
w = T.Screen()
w.setup(width=800, height=700, startx=400, starty=50)
t.hideturtle() # 隐藏画笔
t.getscreen().tracer(5, 0)
w.screensize(bg='wheat') # wheat小麦
t.left(90)
t.up()
t.backward(150)
t.down()
t.color('sienna')
# 输出文字
printer = T.Turtle()
printer.hideturtle()
printer.penup()
printer.back(200)
printer.write("邹同学,七夕快乐!\\n\\n", align="right", font=("楷体", 14, "bold"))
printer.write(" from 董同学", align="center", font=("楷体", 12, "normal"))
# 画樱花的躯干
Tree(60, t)
# 掉落的花瓣
Petal(200, t)
w.exitonclick()
另外这个樱花树是随机生成的,追求灵动感,有的时候特别鬼畜。想要一个比较好看的树型的话,不妨多运行几次。
最后贴出笔者制作完成后的视频效果:
Python程序员的小浪漫一一樱花树
网盘资源
链接:https://pan.baidu.com/s/1Kj6yARqII3ox4q5DsYBXaw
提取码:hipd
欢迎点赞评论,指出不足,笔者由衷感谢!~
以上是关于Python&七夕程序员的小浪漫一一樱花树的主要内容,如果未能解决你的问题,请参考以下文章
python教程入门学习七夕情人节表白|Python程序员的花式表白
❤️七夕佳节,用Python制作表白神器,程序员也应该拥有爱情!附源码,建议收藏❤️