当前位置:首页 >> 编程语言 >> 【Python表白系列】这个情人节送她一个漂浮的爱心吧(完整代码),酷冷至尊刺客

【Python表白系列】这个情人节送她一个漂浮的爱心吧(完整代码),酷冷至尊刺客

0evadmin 编程语言 1
文件名:【Python表白系列】这个情人节送她一个漂浮的爱心吧(完整代码),酷冷至尊刺客 【Python表白系列】这个情人节送她一个漂浮的爱心吧(完整代码)

文章目录 漂浮的爱心环境需求完整代码详细分析系列文章

漂浮的爱心

环境需求 python3.11.4PyCharm Community Edition 2023.2.5pyinstaller6.2.0(可选,这个库用于打包,使程序没有python环境也可以运行,如果想发给好朋友的话需要这个库哦~)

【注】

python环境搭建请见:https://want595.blog.csdn.net/article/details/134586653pyinstaller使用教程见:https://want595.blog.csdn.net/article/details/134106807 完整代码 import turtle as tuimport random as raimport mathtu.setup(1.0, 1.0)tu.screensize(1.0, 1.0)t = tu.Pen()t.ht()colors = ['pink']class Heart(): #每个爱心(爱心类)def __init__(self):self.r = ra.randint(10,15) #爱心的半径self.x = ra.randint(-1000,1000) #爱心的横坐标self.y = ra.randint(-500,500) #爱心的纵坐标self.f = ra.uniform(-3.14,3.14) #爱心左右移动呈正弦函数self.speed = ra.randint(5,10) #爱心移动速度self.color = ra.choice(colors) #爱心的颜色self.outline = 1 #爱心的外框大小(可不要)def move(self): #爱心移动函数if self.y <= 500: #当爱心还在画布中时self.y += self.speed #设置上下移动速度self.x += self.speed * math.sin(self.f) #设置左右移动速度self.f += 0.1 #可以理解成标志,改变左右移动的方向else: #当爱心漂出了画布时,重新生成一个爱心self.r = ra.randint(10,15)self.x = ra.randint(-1000,1000)self.y = -500self.f = ra.uniform(-3.14,3.14)self.speed = ra.randint(5,10)self.color = ra.choice(colors)self.outline = 1def draw(self): #画爱心函数,就是用turtle画爱心t.pensize(self.outline)t.penup()t.color(self.color)t.goto(self.x, self.y)t.pendown()t.begin_fill()t.fillcolor('pink')t.setheading(120)t.circle(self.r, 195)t.fd(self.r * 2.4)t.left(90)t.forward(self.r * 2.4)t.circle(self.r, 195)t.end_fill()Hearts = [] #用列表保存所有爱心for i in range(100):Hearts.append(Heart())tu.bgcolor('black')while True: #开始漂浮tu.tracer(0)t.clear()for i in range(50): #在画布中设置50个漂浮的爱心Hearts[i].move()Hearts[i].draw()tu.update()tu.mainloop() 详细分析

这个程序是使用Python的turtle库画出漂浮的爱心效果。程序中定义了一个“爱心”类,每个爱心具有以下属性:

半径:r横坐标:x纵坐标:y左右移动标志:f移动速度:speed颜色:color外框大小:outline

其中,半径、横坐标、纵坐标、左右移动标志、移动速度和颜色都是随机生成的,以达到多样化的效果。而外框大小则是可选的。

每个爱心还有两个功能:移动和画出。移动函数用来控制爱心的移动方向和速度,当爱心移出画布时,重新生成一个爱心。画出函数则是用turtle库画出爱心的形状。

程序在主程序中生成100个爱心,并在画布中随机漂浮。每次移动结束后,清空画布并重新画出所有爱心,以实现爱心漂浮的连续效果。

在具体实现过程中,turtle库的一些函数也被用到了。例如:

tu.setup(x,y):设置窗口大小为x和y。tu.screensize(x,y):设置画布大小为x和y。t.penup():将笔头移动,不画出形状。t.pendown():将笔头移回,开始画出形状。t.begin_fill():开始填充形状。t.fillcolor(color):填充颜色。t.end_fill():结束填充。

总体上,这个程序使用Python的turtle库,生成了漂浮的爱心效果。程序中运用了随机数和循环等编程知识,通过对爱心类的定义和实例化、以及对turtle库函数的使用,实现了动态的漂浮效果。

系列文章 Python表白系列文章目录直达链接1无法拒绝的表白界面2满屏表白代码https://want595.blog.csdn.net/article/details/1347447113跳动的爱心https://want595.blog.csdn.net/article/details/1347441914漂浮的爱心5爱心光波6流星雨7玫瑰花
协助本站SEO优化一下,谢谢!
关键词不能为空
同类推荐
«    2025年12月    »
1234567
891011121314
15161718192021
22232425262728
293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接