脚本:python实现动态爱心

文章目录

python实现dynamic heart

效果


代码

python 复制代码
import turtle as tu
import random as ra

tu.setup(0.5, 0.5)  # 设置画板大小(小数表示比例,整数表示大小)
tu.screensize(1.0, 1.0)  # 设置屏幕大小
tu.bgcolor('black')  # 设置画布背景颜色
t = tu.Pen()  # 设置画笔
t.ht()  # 隐藏画笔
# colors = ['pink', 'hotpink', 'deeppink', 'lightpink']  # 爱心的颜色列表,可以设置自己喜欢的颜色噢
colors = ['skyblue', 'lightblue', 'blue', 'royalblue'] # 蓝色系
python 复制代码
class Love():  # 爱心类
    def __init__(self, r):  # 初始化
        self.r = r  # 爱心的半径
        self.x = 0 # 爱心的横坐标
        self.y = 120  # 爱心的纵坐标
        self.color = ra.choice(colors)  # 爱心的颜色
        self.outline = 2 # 爱心的外框大小(可不要)

    def 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.lt(90)
        t.fd(self.r * 2.4)
        t.circle(self.r, 195)
        # t.end_fill()

    def change(self):  # 改变爱心的大小(爱心不断增大)
        if self.r <= 100:
            self.r += 1
        else:
            self.r = 1
            self.x = 0
            self.y = 120
            self.c = ra.choice(colors)
python 复制代码
Loves = []  # 爱心列表
for i in range(200):  # 循环增加爱心
    Loves.append(Love(i+1))
while True:  # 开始画爱心
    tu.tracer(0)
    t.clear()
    for i in range(99):
        Loves[i].draw()
        Loves[i].change()
    tu.update()
tu.mainloop()

因为作者不是研究前端的,这是最后一次写基于turtle的绘图。

Reference

动态图制作网页:https://www.matools.com/gif

gif录制软件:https://n802.com/file/16058819-310706385

相关推荐
APIshop5 小时前
Python 获取 1688 商品采集 API 接口 | 工厂货源自动化对接商品信息 | 无需选品
运维·python·自动化
deepin_sir5 小时前
10 - 函数
开发语言·python
z落落5 小时前
C#String字符串
开发语言·c#·php
猫头虎-前端技术6 小时前
JS 作用域与闭包:从变量提升到闭包陷阱的超详细解析
开发语言·javascript·云计算·bootstrap·ecmascript·openstack·perl
charlee446 小时前
《GIS基础原理与技术实践》配套案例(Python版)
python·conda·numpy·gis·环境配置
枫叶林FYL6 小时前
项目十:事件溯源仓储管理系统(WMS)仿真实现
开发语言·python
繁华落尽,倾城殇?6 小时前
[C++11] : atomic,nullptr,default/delete,enum class
开发语言·c++·c++11·nullptr·atomic·enum class·default/delete
01_ice7 小时前
C语言数据在内存中的存储
c语言·开发语言
代码村新手7 小时前
C++-二叉搜索树
开发语言·c++
渣渣xiong8 小时前
从零开始:前端转型AI agent直到就业第五十七天-第五十八天
前端·人工智能·python