表白神器 !升级绚丽爱心代码(可以加字)

html爱心特效代码 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE> New Document </TITLE> <META NAME="Generator" CONTENT="EditPlus"> <META NAME="Author" CONTENT=""> <META NAME="Keywor... 阅读详情

前言

最近都快要被动态爱心刷屏了,今天跟大家带来不一样的爱心代码,可以在爱心中央写下你想要的字!
可以用Python来实现它,会Python的朋友们赶快收藏起来。

文末领取Python全套最新学习资源

一、爱心代码展示

代码运行之后就是这样的啦,简直是表白,道歉神器!
在这里插入图片描述

二、完整代码

复杂粘贴格式容易出问题,大家记得要改正一下哦。
加字的代码在后面,大家替换成自己想要的文字就可以啦!

import random
 
from math import sin, cos, pi, log
 
from tkinter import *
 
CANVAS_WIDTH = 640
 
CANVAS_HEIGHT = 480
 
CANVAS_CENTER_X = CANVAS_WIDTH / 2
 
CANVAS_CENTER_Y = CANVAS_HEIGHT / 2
 
IMAGE_ENLARGE = 11
 
HEART_COLOR = "#FF99CC"
 
 
 
 
 
def center_window(root, width, height):
 
    screenwidth = root.winfo_screenwidth()  # 获取显示屏宽度
 
    screenheight = root.winfo_screenheight()  # 获取显示屏高度
 
    size = '%dx%d+%d+%d' % (width, height, (screenwidth - width) /
 
                            2, (screenheight - height) / 2)  # 设置窗口居中参数
 
    root.geometry(size)  # 让窗口居中显示
 
 
 
 
 
def heart_function(t, shrink_ratio: float = IMAGE_ENLARGE):
 
    x = 16 * (sin(t) ** 3)
 
    y = -(13 * cos(t) - 5 * cos(2 * t) - 2 * cos(3 * t) - cos(4 * t))
 
    # 放大
 
    x *= shrink_ratio
    y *= shrink_ratio
    # 移到画布中央
 
    x += CANVAS_CENTER_X
 
    y += CANVAS_CENTER_Y
 
    return int(x), int(y)
 
 
 
 
 
def scatter_inside(x, y, beta=0.15):
 
    ratio_x = - beta * log(random.random())
 
    ratio_y = - beta * log(random.random())
 
    dx = ratio_x * (x - CANVAS_CENTER_X)
 
    dy = ratio_y * (y - CANVAS_CENTER_Y)
 
    return x - dx, y - dy
 
 
 
 
 
def shrink(x, y, ratio):
 
    force = -1 / (((x - CANVAS_CENTER_X) ** 2 +
 
                  (y - CANVAS_CENTER_Y) ** 2) ** 0.6)
 
    dx = ratio * force * (x - CANVAS_CENTER_X)
 
    dy = ratio * force * (y - CANVAS_CENTER_Y)
 
    return x - dx, y - dy
 
 
 
 
 
def curve(p):
 
    return 2 * (2 * sin(4 * p)) / (2 * pi)
 
 
 
 
 
class Heart:
 
    def __init__(self, generate_frame=20):
 
        self._points = set()  # 原始爱心坐标集合
 
        self._edge_diffusion_points = set()  # 边缘扩散效果点坐标集合
 
        self._center_diffusion_points = set()  # 中心扩散效果点坐标集合
 
        self.all_points = {}  # 每帧动态点坐标
 
        self.build(2000)
 
        self.random_halo = 1000
 
        self.generate_frame = generate_frame
 
        for frame in range(generate_frame):
 
            self.calc(frame)
 
 
 
    def build(self, number):
 
        for _ in range(number):
 
            t = random.uniform(0, 2 * pi)
 
            x, y = heart_function(t)
 
            self._points.add((x, y))
 
        # 爱心内扩散
 
        for _x, _y in list(self._points):
 
            for _ in range(3):
 
                x, y = scatter_inside(_x, _y, 0.05)
 
                self._edge_diffusion_points.add((x, y))
 
        # 爱心内再次扩散
 
        point_list = list(self._points)
 
        for _ in range(4000):
 
            x, y = random.choice(point_list)
 
            x, y = scatter_inside(x, y, 0.17)
 
            self._center_diffusion_points.add((x, y))
 
 
 
    @staticmethod
 
    def calc_position(x, y, ratio):
 
        force = 1 / (((x - CANVAS_CENTER_X) ** 2 +
 
                      (y - CANVAS_CENTER_Y) ** 2) ** 0.520)
 
        dx = ratio * force * (x - CANVAS_CENTER_X) + random.randint(-1, 1)
 
        dy = ratio * force * (y - CANVAS_CENTER_Y) + random.randint(-1, 1)
 
        return x - dx, y - dy
 
 
 
    def calc(self, generate_frame):
 
        ratio = 10 * curve(generate_frame / 10 * pi)
 
        halo_radius = int(4 + 6 * (1 + curve(generate_frame / 10 * pi)))
 
        halo_number = int(
 
            3000 + 4000 * abs(curve(generate_frame / 10 * pi) ** 2))
 
        all_points = []
 
        # 光环
 
        heart_halo_point = set()
 
        for _ in range(halo_number):
 
            t = random.uniform(0, 2 * pi)
 
            x, y = heart_function(t, shrink_ratio=11.6)
 
            x, y = shrink(x, y, halo_radius)
 
            if (x, y) not in heart_halo_point:
 
                heart_halo_point.add((x, y))
 
                x += random.randint(-14, 14)
 
                y += random.randint(-14, 14)
 
                size = random.choice((1, 2, 2))
 
                all_points.append((x, y, size))
 
        # 轮廓
 
        for x, y in self._points:
 
            x, y = self.calc_position(x, y, ratio)
 
            size = random.randint(1, 3)
 
            all_points.append((x, y, size))
 
        # 内容
 
        for x, y in self._edge_diffusion_points:
 
            x, y = self.calc_position(x, y, ratio)
 
            size = random.randint(1, 2)
 
            all_points.append((x, y, size))
 
        self.all_points[generate_frame] = all_points
 
        for x, y in self._center_diffusion_points:
 
            x, y = self.calc_position(x, y, ratio)
 
            size = random.randint(1, 2)
 
            all_points.append((x, y, size))
 
        self.all_points[generate_frame] = all_points
 
 
 
    def render(self, render_canvas, render_frame):
 
        for x, y, size in self.all_points[render_frame % self.generate_frame]:
 
            render_canvas.create_rectangle(
 
                x, y, x + size, y + size, width=0, fill=HEART_COLOR)
 
 
 
 
 
def draw(main: Tk, render_canvas: Canvas, render_heart: Heart, render_frame=0):
 
    render_canvas.delete('all')
 
    render_heart.render(render_canvas, render_frame)
 
    main.after(160, draw, main, render_canvas, render_heart, render_frame + 1)
 
 
 
 
 
if __name__ == '__main__':
 
    root = Tk()
 
    root.title("爱心")
 
    center_window(root, CANVAS_WIDTH, CANVAS_HEIGHT)  # 窗口居中显示
 
    canvas = Canvas(root, bg='black', height=CANVAS_HEIGHT, width=CANVAS_WIDTH)
 
    canvas.pack()
 
    heart = Heart()
 
    draw(root, canvas, heart)
 
    Label(root, text="你想要替换的文字", bg="black", fg="#FF99CC", font="Helvetic 20 bold").place(
 
        relx=.5, rely=.5, anchor=CENTER)
 
    root.mainloop()
 

以上就是今天的全部内容分享,觉得有用的话欢迎点赞收藏哦!

Python经验分享

学好 Python 不论是用于就业还是做副业赚钱都不错,而且学好Python还能契合未来发展趋势——人工智能、机器学习、深度学习等。
小编是一名Python开发工程师,自己整理了一套最新的Python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。如果你也喜欢编程,想通过学习Python转行、做副业或者提升工作效率,这份【最新全套Python学习资料】 一定对你有用!

小编为对Python感兴趣的小伙伴准备了以下籽料 !

对于0基础小白入门:

如果你是零基础小白,想快速入门Python是可以考虑培训的!

  • 学习时间相对较短,学习内容更全面更集中
  • 可以找到适合自己的学习方案

包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,人工智能、机器学习、Python量化交易等学习教程。带你从零基础系统性的学好Python!

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。


最新全套【Python入门到进阶资料 & 实战源码 &安装工具】(安全链接,放心点击)

我已经上传至优快云官方,如果需要可以扫描下方官方二维码免费获取【保证100%免费】

*今天的分享就到这里,喜欢且对你有所帮助的话,记得点赞关注哦~下回见 !

【爱心上面可以加字】Python爱心代码,简单又好看 最近都快要被动态爱心刷屏了,今天跟大家带来不一样的爱心代码,可以在爱心中央写下你想要的字! 阅读详情

相关推荐

python爱心代码中间中间加字

python爱心代码中间中间加字以及教程(接上文)

CL_Young的博客 1万+

爱心发射代码带名字升级版

上次的爱心发射发出来之后,群友想问能不能把心爱的人名字放在爱心中间。当然没问题啊,于是我就改了改代码,让女神王铁蛋显示在爱心中间,同时还可以在屏幕上飘动满屏的王铁蛋,大大小小、快快慢慢的王铁蛋。这还拿不下王铁蛋?话不多说,直接上效果图。背景颜色,爱心颜色,爱心中间的名字,飘动的名字,字体,大小,飘动速度全都可以换成自己想要的,已经把改动方法写到了代码注释里。改动方法在这里:var words_at...

寒羽的博客 3万+

Arduino智能表白盒:从硬件选型到代码实现的完整项目指南

在嵌入式开发与物联网应用中,微控制器作为核心控制单元,通过编程实现对物理世界的感知与控制。其工作原理基于输入-处理-输出的基本逻辑,通过传感器采集环境信号,经过程序算法处理,驱动执行器完成特定动作。这一技术价值在于将抽象代码转化为具体交互,极大降低了电子创客和原型开发的门槛。在智能家居、互动艺术、教育科技等应用场景中,Arduino因其开源生态和易用性,成为实现个性化创意项目的热门平台。本文以打造一个融合传感器、蓝牙通信和智能LED的“表白神器”为例,深入解析了硬件架构设计、模块化编程和系统调试的全过程,涵

weixin_30521161的博客 391

爱心表白代码(带名字)

爱心表白代码(带名字)

qq_51389038的博客 3573

ANSYS 12.1避坑全记录:当Win7+VMware14遇到FLEXlm报错时的自救指南

本文详细介绍了在Windows 7和VMware14环境下安装和运行ANSYS 12.1时遇到的FLEXlm报错问题及其解决方案。通过虚拟机技术隔离时间同步问题,提供从环境配置到许可证管理的完整指南,帮助用户稳定运行这一老旧版本的工程仿真软件。

tt34567的博客 644

RAGFlow API 实战指南:从数据集管理到智能对话

本文提供了RAGFlow API的实战指南,详细介绍了如何从零开始构建基于检索增强生成(RAG)的智能应用。内容涵盖环境准备、API密钥获取、核心概念理解,以及通过API进行数据集创建与管理、文档上传解析、知识块管理、检索测试,最终创建并配置智能聊天助手,实现基于私有知识库的精准对话。

weixin_29284885的博客 379

Python李峋同款跳动的爱心代码(可写字版)

一年前小编曾用python编写过跳动的爱心代码,不知道有多少小伙伴们已经学会了呢,最近小编在用c语言和java编写跳动的爱心的时候,发现之前用python编写跳动的爱心时没有添加文字,这不,小编立马翻出之前的代码一顿操作,给大家带来了更新后的爱心,快来看看趴~(附详细分析哦)

xxue345678的博客 1万+

银河麒麟桌面版V10搭建Qt4.8.6开发环境

银河麒麟桌面版V10搭建Qt4.8.6开发环境

qq_34932364的博客 2400

今天给大家带来Python炫酷爱心代码

今天给大家带来Python炫酷爱心代码

Python单行客的博客 2万+

【 史上最全】测绘、遥感RS、地信GIS国家级比赛竞赛整理

目录Esri Esri

weixin_43910227的博客 9153

010Editor实战:5分钟破解Zip伪加密文件(附BUUCTF真题解析)

本文详细介绍了如何使用010Editor快速破解Zip伪加密文件,包括BUUCTF真题的完整解析。通过修改关键字节,轻松解除伪加密状态,适用于CTF竞赛和实际工作场景,提升文件处理效率。

weixin_29325007的博客 326

程序员python表白代码

python表白代码 源代码如下: # -*- coding:utf-8 -*- import turtle import time # 画爱心的顶部 def LittleHeart(): for i in range(200): turtle.right(1) turtle.forward(2) # 输入表白...

weixin_30338461的博客 2595

简单VASP计算INCAR设置(结构优化OPT、静态自洽SCF、能带BAND、态密度DOS)

改变 K 点、NBANDS、晶胞、ENCUT、POTCAR、自旋或 SOC 后要检查兼容性。该参数不参与物理计算,因此不会改变总能量、受力、应力或最终结构。如果研究的是金属、磁性材料、表面、二维材料、分子、缺陷、DFT+U、杂化泛函或强自旋轨道耦合体系,部分参数必须调整。适合已经用 IBRION = 2 预优化、力较小、自由度较多的结构。在 IBRION = 1、2、3 中,它只是内部缩放因子。“不能修改”不是程序禁止修改,而是修改后会改变理论模型、数值精度或能量参考,使结果不能直接比较。

weixin_51420530的博客 124

【情人节】--可变色爱心,可写下爱人名字

快来试试吧! #include<stdio.h> #include <windows.h> int main() { system("mode con cols=80 lines=35"); double x,y,a; printf(" XXX , 我爱你!\n"); for(y=1.5;y>-1.5;y-=0.1) { for(x=-1.5;x<1.5;x.

Rock_Lihaoran的博客 3461

31、摩擦学中的材料选择

本博文深入探讨了摩擦学应用中材料选择的重要性,分析了材料的机械、物理和化学属性对摩擦学性能的影响。同时介绍了材料匹配原则、处理方法及表面涂层技术,以优化耐磨性和抗腐蚀性。通过实际案例和评估方法,为读者提供了系统化的材料选择流程和决策依据。

juice的博客 246

手把手教你学Simulink--基于Simulink的移相全桥DC-DC变换器仿真建模

特点高效性:通过实现零电压开关(ZVS)减少开关损耗。电气隔离:使用变压器提供输入输出间的电气隔离。适用于中高功率应用:如服务器电源、工业电源等。挑战控制复杂度:精确控制相位差以实现软开关。元件选择:合适的电感、电容值对于性能至关重要。动态响应:快速响应负载变化,保持稳定的输出电压。首先明确要模拟的任务内容。设计一个能够支持特定输入输出电压比的PSFB变换器。根据工作频率和谐振元件值确定合适的电路参数。实现有效的控制策略来维持输出电压稳定,并实现软开关。

MHD0815的博客 520

C语言最全爱心代码大全

【代码】C语言最全爱心代码大全。

weixin_58045538的博客 41万+

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Python表白爱心代码

Python表白爱心代码

共同学习,共同提升,来了就是一家猿~ 682

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

爱心代码(python)_爱心代码编程python可复制_python画爱心代码大全

鉴于好多小伙伴不太会运行,这边补充一下我的运行方式哈~(针对python),不会的小伙伴直接点击 “运行步骤”即可~运行步骤一、python代码(love.py)else:print('\n to 茂茂酱!!\n\n')运行图:二、python代码(love.py)# 布置画布和设置画笔配置t.setup(width=800, height=500) #窗口(画布)大小t.color('pink', 'pink') #画笔填充颜色t.pensize(3) #画笔粗细。

xiangxueerfei的博客 1万+

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

python爱心的编程代码,python画爱心代码大全

大家好,小编来为大家解答以下问题,python表白代码大全可复制免费,python表白代码大全推出爱心,现在让我们一起来看看吧!大家好,小编来为大家解答以下问题,python爱心的编程代码,python画爱心代码大全,现在让我们一起来看看吧!love = input('请输入表白语句,默认为输入为"I Love you": ')me = input('请输入您心上人的姓名或者昵称: ')# 输入表白的语句,默认I Love you。# 输入署名或者赠谁,没有不执行。# 去到的坐标,窗口中心为0,0。

chatgpt002的博客 2770

python编程画爱心代码,python 爱心名字代码

下面进入正题,分享一波专属Python表白代码。玫瑰毫无疑问,玫瑰一直都是是520、521…这类节日的专属python爱心代码加人名。# 花瓣# 文字【----完整源码文末免费领!----】效果:心连心t.width(5)t.fd(100)t.left(90)t.fd(100)t.pu()t.pd()t.fd(100)t.left(90)t.fd(100)t.pu()t.pd()效果:动态爱心效果:爱心biupensize(3)left(150)

2301_81900439的博客 1159

html爱心表白代码(最全)_爱心代码html

本文共有14个表白效果,几乎每个代码都有详细的使用说明和独立的支付入口,扫码支付成功后会得到该资源的百度网盘链接和提取码。如果你用电脑,直接打开手机支付宝扫码支付成功后刷新页面即可;如果你用手机,那么把支付页面截图再去支付宝扫一扫,支付成功同样会得到链接和提取码,这时候只需要选择复制链接,记住提取码就可以复制到网上提取了。每个代码的效果都是以动图形式展示,有些效果不能完全展示,可以通过视频看部分代码组合效果—>>>程序员表白代码组合视频展示效果1:可以进社区下载—>>>效果1——爱心跳动资源。

2401_87556704的博客 1万+

java爱心代码第二版,脱单必备

java爱心代码第二版,详细展示绘制过程。

weixin_43485737的博客 714

爱心代码(python)_爱心代码编程python可复制

爱心代码(python)_爱心代码编程python可复制

隔壁王叔的博客 1万+

最强Python表白代码来了

最强Python表白代码来了

xiangxue888的博客 10万+
上一篇: 【Python爬虫】0基础入门步骤+案例(附源码)
下一篇: 【Python实用教学】零基础快速入门Python文件操作
田野猫咪
博客等级 码龄4年 5080粉丝 502原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值