所感是对毕业季的感想,所现是代码的实现
所感
六月的风悄然吹过,啊,是炽热的风,和这风一起来的还有毕业的脚步,是的,我毕业了,我去年就毕业了,但今年这场毕业盛典或许不应该仅仅属于这一届毕业生,请允许我这位学长,没穿过学士服,没有毕业照,没有毕业典礼的一位学长,也蹭一蹭今年的毕业季,假装自己刚刚毕业。
我是一名大四的学生,论文已经提交了,马上就要毕业了,宿舍楼下的帐篷都支了起来,人们开始忙着邮寄自己的物品,大包小包,四年的青春竟是如此沉重,这还是丢弃和出售过后的成果,我也要整理好了自己的行李,还有舍友的物品,先去取学位证书和毕业证书吧,由于不小心被雨水浸泡还没拿到手的证书封皮居然已经发霉变形了,这就是我们的毕业季吗?疫情、霉运、凑不齐的舍友,合照上样式各异的服装和半数的同学。好在离开宿舍时没有热泪滚落,没有太多伤感,仿佛是一次寒暑假的离别,也或许是因为我和舍友一同离开的宿舍,少了在宿舍的互相道别,也就少了那一份伤感。
我是一名毕业生,调剂上岸了,每天有时间就做做导师给的任务,朴实无华且枯燥,刚毕业的那几天,我会时不时的翻翻毕业证书,那本毕业相册却很少打开,就这么毕业了吧,开始下一段旅途了。
我是一名研一的学生,趁着端午回了一趟母校,千里迢迢,还由于起晚误了飞机,多花了1000多块,飞机、地铁、火车、大巴,返校的路还是这么曲折,汽车站却是一副崭新模样,疫情的阴霾还未完全褪去,尤其是对于护城河来说,封校成了常态,我只能经由栅栏的缺口出入学校,校园倒没有大的变化,还是记忆中的模样。可惜假期太短,毕业典礼又太晚,回到现在的学校后,才在空间看到,这就是大鹏一日同风起,扶摇直上九万里吧。
所现
回到学校,不断的翻看空间、朋友圈,内心思绪万千,又恰巧看到了这次征文活动,那就借此机会为毕业的你们和自己放一场烟花吧。
绽放前烟花参考自己之前的博客turtle库绘制QQ表情“蹭一蹭” “惊鸿一现”部分
绽放效果参考博客Python制作烟花秀 整体实现代码如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
@Date: 2021/6/19 16:21:15
@Software: PyCharm
@Author: lazyn
"""
import time
import random
import turtle
from turtle import *
def draw_firework(count, dis, ang):
for c in range(count):
forward(dis)
left(ang)
def draw(lis):
pensize(1)
for t in range(10):
for li in lis:
x, y, col, dis, ang, add, count = li
penup(), goto(x - t * add / 2, y), pendown()
color('black', col)
begin_fill()
setheading(0)
draw_firework(count, t * add + 30, ang)
end_fill()
update()
time.sleep(0.015)
clear()
pensize(2)
for t in range(10):
for li in lis:
x, y, col, dis, ang, add, count = li
count = int(count / 4)
penup(), goto(x - add * 5 + 10, y), pendown()
setheading(-90)
stara = dis / 2 - 10
penup(), left(90), backward(2 * t), right(90)
for i in range(count):
penup()
pencolor(col)
circle(stara + t * 2, 360 / count - 1)
pendown()
circle(stara + t * 2, 1)
update()
time.sleep(0.03)
clear()
def main(cols):
while True:
fires = random.randint(10, 15)
need_list = []
for f in range(fires):
startx, starty = random.randint(-350, 350), random.randint(-100, 250)
ccol = random.choice(cols)
dist = random.randint(50, 80)
if dist <= 60:
angle = 171
else:
angle = random.choice([174, 175, 176])
add = (dist - 30) / 10
count = int(360 / (180 - angle))
need_list.append([startx, starty, ccol, dist, angle, add, count])
draw(need_list)
clear()
done()
if __name__ == '__main__':
setup(810, 605)
screensize(800, 600, 'black')
hideturtle()
colors = ['red', 'blue', 'yellow', 'white',
'green', 'orange', 'purple', 'seagreen',
'indigo', 'cornflowerblue']
tracer(False)
main(colors)