服务器之家

服务器之家 > 正文

Python实战项目刮刮乐的实现详解流程

时间:2022-02-24 00:25     来源/作者:嗨!程序媛

导语

在CSDN学习的过程中,遇到了爆火的文章是关于刮刮卡的!

大家猜猜看是谁写的?

Python实战项目刮刮乐的实现详解流程

我看这文章都特别火,我也感觉挺好玩的,那就寻思用 Python肯定也能做呀!

这不?今天还有时间,那就带大家写一款刮刮乐的小程序吧~

1)环境安装

准备好Python3、Pycharm、Pygame模块还有一些自带的。

模块安装:pip install   pygame

图片素材音乐背景可自选。【仅展示部分素材】

Python实战项目刮刮乐的实现详解流程

Python实战项目刮刮乐的实现详解流程

2)正式敲代码

2.1定义必要常量

BGMPATH = 'music/bgm.mp3'
IMAGEDIR = 'pictures'
SUPPORTEXTS = ['jpg', 'png', 'bmp']
SCREENSIZE = (800, 600)
WHITE = (255, 255, 255, 27)
GRAY = (192, 192, 192)

2.2设置随机读取图片

设置随机读取,更有趣味性,每张图片都特别好看哦~

def readImageRandomly():
	filenames = os.listdir(IMAGEDIR)
	filenames = [f for f in filenames if f.split('.')[-1] in SUPPORTEXTS]
	imgpath = os.path.join(IMAGEDIR, random.choice(filenames))
	return pygame.transform.scale(pygame.image.load(imgpath), SCREENSIZE)

2.3主程序

def main():
	pygame.init()
	pygame.mixer.init()
	pygame.mixer.music.load(BGMPATH)
	pygame.mixer.music.play(-1, 0.0)
	pygame.mouse.set_cursor(*pygame.cursors.diamond)
	screen = pygame.display.set_mode(SCREENSIZE)
	pygame.display.set_caption('小程序――唯美古风')
	surface = pygame.Surface(SCREENSIZE).convert_alpha()
	surface.fill(GRAY)
	image_used = readImageRandomly()
	while True:
		for event in pygame.event.get():
			if event.type == pygame.QUIT:
				pygame.quit()
				sys.exit(-1)
		mouse_event_flags = pygame.mouse.get_pressed()
		if mouse_event_flags[0]:
			pygame.draw.circle(surface, WHITE, pygame.mouse.get_pos(), 40)
		elif mouse_event_flags[-1]:
			surface.fill(GRAY)
			image_used = readImageRandomly()
		screen.blit(image_used, (0, 0))
		screen.blit(surface, (0, 0))
		pygame.display.update()

3)效果图展示

3.1 part 随机图一

Python实战项目刮刮乐的实现详解流程

3.2 part 随机图二

Python实战项目刮刮乐的实现详解流程

3.3 part 随机图三

Python实战项目刮刮乐的实现详解流程

 

总结

好啦!一款简单的刮刮卡小程序就写完了,想自己试试嘛?

好啦!本次文章就到这里了~如有想跟着小编一起学习交流的,欢迎大家!记得三连哦

Python实战项目刮刮乐的实现详解流程

到此这篇关于Python实战项目刮刮乐的实现详解流程的文章就介绍到这了,更多相关Python 刮刮乐内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/xy258009/article/details/121093980

标签:

相关文章

热门资讯

蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
2022年最旺的微信头像大全 微信头像2022年最新版图片
2022年最旺的微信头像大全 微信头像2022年最新版图片 2022-01-10
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
返回顶部