脚本: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

相关推荐
shinelord明5 分钟前
【Python】Python知识总结浅析
开发语言·人工智能·python
吹老师个人app编程教学9 分钟前
阿里巴巴_java开发规范手册详解
java·开发语言
初阳78529 分钟前
【Qt】控件概述(4)—— 输出类控件
开发语言·qt·命令模式
大白_dev32 分钟前
数据校验的总结
java·开发语言
雷神乐乐36 分钟前
Python常用函数
开发语言·python
失落的香蕉39 分钟前
Java第二阶段---10方法带参---第三节 面向对象和面向过程的区别
java·开发语言
安冬的码畜日常1 小时前
【玩转 JS 函数式编程_008】3.1.2 JavaScript 函数式编程筑基之:箭头函数——一种更流行的写法
开发语言·javascript·ecmascript·es6·this·箭头函数
只会掉头发的程序猿1 小时前
在QT中将Widget提升为自定义的Widget后,无法设置Widget的背景颜色问题解决方法
开发语言·qt
model20051 小时前
android + tflite 分类APP开发-1
python·tflite·model maker
凯子坚持 c2 小时前
C语言复习概要(四)
c语言·开发语言