情人节到了,我用Python教你百分百俘获你的女神。程序员的专属浪漫。

【python】程序员最浪漫的表白方式,将情书写在她的照片里 大家早好、午好、晚好吖~这不光棍节快到了,表弟准备写一封情书给他的女神,想在光棍节之前脱单。为了提高成功率,于是跑来找我给他参谋参谋,本来我是不想理他的。不过谁让他是我表弟呢(请我洗jio),于是教给他程序员的终极浪漫绝招先假装给女神拍照,然后再把情书写到她的照片上打印出来送给她,嘿嘿~安装完成后,我们先来简单介绍几个常用示例新建及保存图片。 阅读详情

前言

你是哪种呢?

一年一度的情人节马上就要来了,你做好脱单的准备了吗? 程序员在外行的眼中就是格子衫,牛仔裤,黑框眼镜。当然秃顶也是必须的,更狠的吐槽还有邋里邋遢,不懂浪漫!开始可能只是幽默玩笑,后面慢慢就越传越多,大家便信以为真!可是程序员真的是这样吗?随着现在编程这个行业的普遍高薪收入,程序员又成为大家关注的焦点,深入的了解后,发现程序员其实是很可爱的一个群体。他们有着自己标新立异的想法和活跃的思维,他们用指间汇编着这个精彩的世界。他们有时会很丧,却又很快的充满能量去面对工作和生活,他们有时话会很少,因为他们知道自己肩上的担子很重,他们用双手小心翼翼的呵护着亲人,爱人的幸福。用自己的思维去让这个世界更美好!都说他们不懂浪漫,但你们是否见过他们遇见爱情的样子!今天就给大家分享一个好玩的表白软件,就算失败了也不尴尬,成功了那不是更好吗?

需要用到的工具

Python3.7.8

Python自带的一些模块

直接展示效果


 

 

 

 不走会跟着鼠标移动而移动,就是他会躲着你,由于上传不了视频就看下图片效果吧!废话不多说,直接上代码

完整代码

'''
主题:
表白神器
夹V;hkyx2023cs 领取素材或exe文件 直接点击即可运行
'''
import sys
import cfg
import random
import pygame
from tkinter import Tk, messagebox


'''
Function:
	按钮类
Initial Args:
	--x, y: 按钮左上角坐标
	--width, height: 按钮宽高
	--text: 按钮显示的文字
	--fontpath: 字体路径
	--fontsize: 字体大小
	--fontcolor: 字体颜色
	--bgcolors: 按钮背景颜色
	--is_want_to_be_selected: 按钮是否想被玩家选中
	--screensize: 软件屏幕大小
'''
class Button(pygame.sprite.Sprite):
	def __init__(self, x, y, width, height, text, fontpath, fontsize, fontcolor, bgcolors, edgecolor, edgesize=1, is_want_to_be_selected=True, screensize=None, **kwargs):
		pygame.sprite.Sprite.__init__(self)
		self.rect = pygame.Rect(x, y, width, height)
		self.text = text
		self.font = pygame.font.Font(fontpath, fontsize)
		self.fontcolor = fontcolor
		self.bgcolors = bgcolors
		self.edgecolor = edgecolor
		self.edgesize = edgesize
		self.is_want_tobe_selected = is_want_to_be_selected
		self.screensize = screensize
	'''自动根据各种情况将按钮绑定到屏幕'''
	def draw(self, screen, mouse_pos):
		# 鼠标在按钮范围内
		if self.rect.collidepoint(mouse_pos):
			# --不想被选中
			if not self.is_want_tobe_selected:
				while self.rect.collidepoint(mouse_pos):
					self.rect.left, self.rect.top = random.randint(0, self.screensize[0]-self.rect.width), random.randint(0, self.screensize[1]-self.rect.height)
			pygame.draw.rect(screen, self.bgcolors[0], self.rect, 0)
			pygame.draw.rect(screen, self.edgecolor, self.rect, self.edgesize)
		# 鼠标不在按钮范围内
		else:
			pygame.draw.rect(screen, self.bgcolors[1], self.rect, 0)
			pygame.draw.rect(screen, self.edgecolor, self.rect, self.edgesize)
		text_render = self.font.render(self.text, True, self.fontcolor)
		fontsize = self.font.size(self.text)
		screen.blit(text_render, (self.rect.x+(self.rect.width-fontsize[0])/2, self.rect.y+(self.rect.height-fontsize[1])/2))


'''在指定位置显示文字'''
def showText(screen, text, position, fontpath, fontsize, fontcolor, is_bold=False):
	font = pygame.font.Font(fontpath, fontsize)
	font.set_bold(is_bold)
	text_render = font.render(text, True, fontcolor)
	screen.blit(text_render, position)


'''主函数'''
def main():
	# 初始化
	pygame.init()
	screen = pygame.display.set_mode(cfg.SCREENSIZE, 0, 32)
	pygame.display.set_icon(pygame.image.load(cfg.ICON_IMAGE_PATH))
	pygame.display.set_caption('来自一位帅气的小哥哥')
	# 背景音乐
	pygame.mixer.music.load(cfg.BGM_PATH)
	pygame.mixer.music.play(-1, 30.0)
	# biu爱心那个背景图片
	bg_image = pygame.image.load(cfg.BG_IMAGE_PATH)
	bg_image = pygame.transform.smoothscale(bg_image, (150, 150))
	# 实例化两个按钮
	button_yes = Button(x=20, y=cfg.SCREENSIZE[1]-70, width=120, height=35, 
						text='跟你走', fontpath=cfg.FONT_PATH, fontsize=15, fontcolor=cfg.BLACK, edgecolor=cfg.SKYBLUE,
						edgesize=2, bgcolors=[cfg.DARKGRAY, cfg.GAINSBORO], is_want_to_be_selected=True, screensize=cfg.SCREENSIZE)
	button_no = Button(x=cfg.SCREENSIZE[0]-140, y=cfg.SCREENSIZE[1]-70, width=120, height=35, 
					   text='不走', fontpath=cfg.FONT_PATH, fontsize=15, fontcolor=cfg.BLACK, edgecolor=cfg.DARKGRAY,
					   edgesize=1, bgcolors=[cfg.DARKGRAY, cfg.GAINSBORO], is_want_to_be_selected=False, screensize=cfg.SCREENSIZE)
	# 是否点击了好呀按钮
	is_agree = False
	# 主循环
	clock = pygame.time.Clock()
	while True:
		# --背景图片
		screen.fill(cfg.WHITE)
		screen.blit(bg_image, (cfg.SCREENSIZE[0]-bg_image.get_height(), 0))
		# --鼠标事件捕获
		for event in pygame.event.get():
			if event.type == pygame.QUIT:
				# ----没有点击好呀按钮之前不许退出程序
				if is_agree:
					pygame.quit()
					sys.exit()
			elif event.type == pygame.MOUSEBUTTONDOWN and event.button:
				if button_yes.rect.collidepoint(pygame.mouse.get_pos()):
					button_yes.is_selected = True
					root = Tk()
					root.withdraw()
					messagebox.showinfo('', '永远爱你')
					root.destroy()
					is_agree = True
		# --显示文字
		showText(screen=screen, text='你是我最爱的女孩,', position=(40, 50),
				 fontpath=cfg.FONT_PATH, fontsize=25, fontcolor=cfg.BLACK, is_bold=False)
		showText(screen=screen, text='再多AJ都不换那种!', position=(40, 100),
				 fontpath=cfg.FONT_PATH, fontsize=25, fontcolor=cfg.BLACK, is_bold=True)
		# --显示按钮
		button_yes.draw(screen, pygame.mouse.get_pos())
		button_no.draw(screen, pygame.mouse.get_pos())
		# --刷新
		pygame.display.update()
		clock.tick(60)


'''run'''
if __name__ == '__main__':
	main()

 生成的exe文件已打包,谢谢大家支持

【Python项目】520必备表白神器合集,程序员的浪漫 | 附带源码 相关文件 关注小编,私信小编领取哟! 当然别忘了一件三连哟~~ 公众号:Python日志 可以关注小编公众号,会不定时的发布一下Python小技巧,还有很多资源可以免费领取哟!! 源码领取:加Python学习交流群:773162165 可以领取哟 开发工具 Python版本:3.7.8 相关模块: turtle模块; time模块; pyttsx3模块; 以及一些python自带的模块。 环境搭建 安装Python并添加到环境变量,pip安装需要的相关模块即可。 一:画爱心 效果展示 代码展示 impor 阅读详情

相关推荐

程序员向妹子表白专用代码

程序员欧巴们,祝你们早日找到自己的soulmate(灵魂伴侣)`(*∩_∩*)′

教你用Python浪漫表白,专属程序员的浪漫

这还拿不下你

m0_66958971的博客 446

程序员之小浪漫--Python爱心

Python编写的爱心程序,输入字符以给定字符呈现爱心,小浪漫的

程序员的浪漫:用代码写情书,用算法表白

程序员,往往给人一种理性、逻辑、不浪漫的印象。然而,当他们遇到真爱时,也会化身成浪漫诗人,用代码写情书,用算法表白,演绎一场场别样的浪漫。代码情书代码是程序员的语言,也是他们表达爱意的一种方式。他们可以用代码写一首情诗,绘制一个爱心图案,甚至编写一个程序来表白。Python算法表白程序员还可以用算法来表白。他们可以设计一个算法,计算你和他的匹配度,或者编写一个程序,模拟你们未来的爱情生活。Python程序员的浪漫创意除了代码情书和算法表白,程序员还会用各种创意的方式,用代码表达爱意。

2301_78095812的博客 2843

Android 12 HAL开发避坑实录:手把手教你用AIDL在Native层实现一个可开机自启动的Service

本文详细介绍了在Android 12 HAL开发中,如何通过AIDL在Native层实现一个可开机自启动的Service。从环境准备、AIDL接口定义、服务实现到VINTF集成与SELinux策略配置,提供了完整的实战指南,帮助开发者避开常见陷阱,提升开发效率。

weixin_28314575的博客 321

VSCode插件全攻略:5分钟搞定Mermaid流程图实时预览(含常见报错解决)

本文提供了一份详细的VSCode插件实战指南,帮助开发者快速配置Mermaid流程图实时预览环境。文章涵盖核心插件选择、高效工作流搭建,并重点解决了图表渲染失败、样式异常等常见报错问题,旨在提升技术文档的编写效率与可视化质量。

rust6ferris的博客 1484

当代码遇上浪漫:Python创意爱心代码分享

编程远不止是工具和逻辑,它同样可以成为艺术和情感的载体。从简单的字符拼接到复杂的动态效果,Python为我们提供了无数种表达创意的可能。希望这些爱心代码能给你带来启发和快乐。不妨动手试一试,修改它,创造属于你自己的、独一无二的“代码情书”。在这个数字时代,用最酷的方式,传递最温暖的心意吧!

m0_59598970的博客 990

主成分分析避坑指南:为什么你的PCA结果总是不理想?

本文深入剖析了主成分分析(PCA)在实际应用中效果不佳的常见原因与解决方案。针对数据标准化、协方差矩阵选择、主成分数量确定、载荷矩阵解读等关键环节,提供了详细的避坑指南和诊断方法,并探讨了PCA的局限性及非线性数据结构下的备选方案,帮助数据分析师获得更稳健、可解释的降维结果。

convnet3designer的博客 510

Python程序员的浪漫-实现每天定时给Ta推送微信公众号消息提醒(超详细教程)

任何事情有疑问都可在QQ群里奥:717605613 免责声明:本篇文章提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本信息来自网络收集整理,版权争议与本人无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请私信与我联系,敬请谅解!

WK攻城狮的博客 7199

如何通过常规测井曲线识别砂岩、泥岩、碳酸盐岩和煤层

常规测井曲线通过不同岩性的物理性质差异识别砂岩、泥岩、碳酸盐岩和煤层。砂岩表现为低自然伽马(GR)、中等密度(RHOB)和声波时差(DT);泥岩以高GR、高中子(NPHI)和高DT为特征;碳酸盐岩显示低GR、高RHOB和低DT;煤层则具有极低RHOB、极高NPHI和DT的独特组合。综合GR与三孔隙度曲线(RHOB、NPHI、DT)可有效区分岩性,其中密度测井对煤层识别最可靠。电阻率(RT)曲线辅助判断流体性质,但需结合其他参数综合分析。

love code, love life. 2590

别只聊天了!手把手教你为Ollama+Open WebUI搭建本地知识库(基于BGE-M3和Qwen)

本文详细介绍了如何利用Ollama、Open WebUI和BGE-M3构建本地知识库,实现智能问答和文档检索。通过环境准备、文档处理、向量化实战和应用案例,帮助用户突破基础聊天场景,打造高效的个人知识管理体系。特别适合技术文档管理和学术研究场景。

weixin_42523720的博客 478

哪有女孩子不喜欢浪漫,用python实现程序员独有的浪漫表白

昨天简单的讲述了一个坤坤打篮球的小游戏,作为真爱粉的我表示真好玩,完全是一个不管上班摸鱼还是闲暇时间消遣的不二选择。今天来弄一下表白程序员的小程序。什么?你问我为什么要弄这个?不要问,问就是emmmmm开整!开整!开整turtle.hideturtle() #隐藏画笔(先)turtle.up() # 提笔turtle.goto(x,y) # 移动画笔到指定起始坐标(窗口中心为0,0)turtle.down() # 下笔turtle.showturtle() # 显示画笔。

ch950401的博客 337

Keras中神经网络可视化模块keras.utils.visualize_util安装配置方法

Keras中神经网络可视化模块keras.utils.visualize_util安装配置方法

jacke121的专栏 2759

python程序员的浪漫

python送给女朋友的专属代码!

小 y 同 学的博客 3073

Palantir如何利用Ontology构建企业级数据地图

Palantir通过"本体论"(Ontology)技术构建动态数据地图,将多源异构数据转化为可操作的业务知识网络。该技术突破传统ETL模式,建立覆盖全组织的语义层,将原始数据映射为"客户""订单"等业务对象及其关联关系,形成可推理的语义网络。核心Foundry平台提供本体管理工具(OMA)和开发套件(OSDK),支持从数据连接到应用开发的全流程。虽然采用专有实现而非标准本体语言,但该架构成功解决了数据孤岛问题,赋能复杂决策分析

Learning 1786

LPDDR5 学习笔记02:上电初始化与下电时序

LPDDR5上电初始化流程需严格遵守时序要求:首先确保电源按顺序上电(VDD1→VDD2H→VDD2L→VDDQ),RESET_n保持低电平至电压稳定。初始化包含自动ZQ校准、命令总线训练(CBT)、WCK2CK电平校准和DQ总线训练四个关键阶段,需完成全部训练后才能正常操作。在双电源轨系统中,须在CBT前设置MR13寄存器。复位操作需保持RESET_n低电平至少tPW_RESET时间,断电时要求CS保持低电平且电源电压有序下降。非受控下电时电压斜率需低于0.5V/μs,器件生命周期内不得超过400次非受控

一只豌豆象的博客 2040

Python程序员的浪漫-企业微信每日图文推送-天气、运势、鸡汤、学一句、爱情纪念日(超详细图文教程)

任何事情有疑问都可在QQ群里奥:717605613 免责声明:本篇文章提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本信息来自网络收集整理,版权争议与本人无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请私信与我联系,敬请谅解!

WK攻城狮的博客 2404

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

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

python浪漫代码-使用Python代码的程序员也浪漫

原标题:使用Python代码的程序员也浪漫代码也浪漫:用Python放一场圣诞节烟花秀!天天敲代码的朋友,有没有想过代码也可以变得很酷炫又浪漫?今天就教大家用Python模拟出绽放的烟花庆祝昨晚法国队夺冠,工作之余也可以随时让程序为自己放一场烟花秀。这个有趣的小项目并不复杂,只需一点可视化技巧,100余行Python代码和程序库Tkinter,最后我们就能达到下面这个效果: 学完本教程后,你也能做...

weixin_37988176的博客 4515

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Python:绘制520-程序员的浪漫

(1) 用*绘制数字“520” ncol=20 nrow=10 proposal=[0,1,2,3,4,5,9,17, 1+1*ncol,8+1*ncol,10+1*ncol,16+1*ncol, 18+1*ncol,1+2*ncol,11+2*ncol,15+2*ncol,19+2*ncol, 1+3*ncol,12+3*ncol,...

Hellolijunshy的博客 1470

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

浪漫至死不渝,程序员的浪漫——python绘图

python浪漫至死不渝,代码来咯,灰色粉色樱花,动态飘落花瓣的樱花都有~

m0_52978768的博客 2271

程序员的浪漫你懂嘛?教你用Python语言向你心爱的人表白!

浪漫至死不渝! 程序员的浪漫----教你如何用简单的python语言向心爱的人表白!

xiangxueerfei的博客 872

python表白代码-python告白代码,只属于程序员的浪漫

不知何时,不知何因,程序员这个行业成为大家茶余饭后取乐的无辜群体。只要说到程序员,脑海中就浮现出刻板印象,标配穿搭:格子衫,牛仔裤,黑框眼镜。当然秃顶也是必须的,更狠的吐槽还有邋里邋遢,不懂浪漫,不知人情世故!开始可能只是幽默玩笑,后面慢慢就越传越多,大家便信以为真!可是程序员真的是这样吗?随着现在编程这个行业的普遍高薪收入,程序员又成为大家关注的焦点,深入的了解后,发现程序员其实是很可爱的一个群...

q6q6q的专栏 2万+

用算法撩妹都不会,别跟我说你是程序员

程序员头条(ID:CoderTop) 猿妹 编译原文:https://medium.com/@howal/mathematically-find-out-if-a-girl-is-interested-in-you-44217c75d5fe程序员浪漫的表白方式可以说是花样百出,为什么用在自己身上就没效果呢?作为一个程序员“身边的女生”,猿妹觉得,大部分程序员没有女朋友,很可能是恋爱技能bug太多,

代码技巧 7169

感受程序员的浪漫情怀-Github婚恋项目精选

最近娱乐圈可谓各种风波不断,先是所谓的两宋离婚,然后是范冰冰和李晨分手,而且每到这个时候还总有人到汪峰的微博留言,估计微博的运维工程师已经要崩溃了。目前北京、上海等一线城市的离婚率已经接近50%,所以娱乐圈的种种分分合合只是这种趋势的一个缩影而已。不过虽然没有具体数据支持,不过笔者身边的程序员群体几乎都是从一而终,很少听到婚变的传闻,这可能是程序员们的脑力都铺在了工作上,生活中比较...

Python爱好者的专栏 7828

用python画星空_用python画一幅美瞳,今日份来自程序员的浪漫

如果说,眼睛是心灵的窗户,那么,美瞳就是心灵的彩窗,就像下图中这样。而我们今天所要挑战的,就是用python画美瞳,而且是五分钟之内画三百副争奇斗艳、各领风骚、绝不重样的美瞳。作为这颗地球上最纯情的少年,我一直抱守着最质朴的信念——美丽,绝不NG!江湖上一直都有传言,python除了生孩子不会,别的都会!那么,python作为理工男的玩具,程序员的武器,要攻下美瞳这块属于女孩子们的领地,虽然免不了...

weixin_39629269的博客 319

Python+Agent入门笔记(二):列表推导式、模块和异常,这些写 Agent 前得会

接上一篇《Python+Agent入门笔记(一)》。基础语法跑通之后,这篇聊几块日常写脚本绕不开的东西。还是按 JS/Go 开发者的视角写,尽量记录我实际卡过的地方。

qq_41241612的博客 428
上一篇: 有点激动,Python实现视频号自动赚钱!
下一篇: 盗号不是只有黑客才能到,一枚普通的Python程序员也可以!
PythonJavaPHP
博客等级 码龄7年 116粉丝 76原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值