赞
踩
在CSDN学习的过程中,遇到了爆火的文章是关于刮刮卡的!
大家猜猜看是谁写的?
我看这文章都特别火,我也感觉挺好玩的,那就寻思用 Python肯定也能做呀!
这不?今天还有时间,那就带大家写一款刮刮乐的小程序吧~
准备好Python3、Pycharm、Pygame模块还有一些自带的。
模块安装:pip install pygame
图片素材音乐背景可自选。【仅展示部分素材】
- BGMPATH = 'music/bgm.mp3'
- IMAGEDIR = 'pictures'
- SUPPORTEXTS = ['jpg', 'png', 'bmp']
- SCREENSIZE = (800, 600)
- WHITE = (255, 255, 255, 27)
- GRAY = (192, 192, 192)
设置随机读取,更有趣味性,每张图片都特别好看哦~
- 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)
- 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()
好啦!一款简单的刮刮卡小程序就写完了,想自己试试嘛?
好啦!本次文章就到这里了~如有想跟着小编一起学习交流的,欢迎大家!记得三连哦
素材包+打包的项目源码:微信公众号——Python顾木子吖 即可免费获取!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。