当前位置:   article > 正文

【Python实战项目】做一个 刮刮乐 案例,一不小心....着实惊艳到我了。_用pycharm实现刮刮乐

用pycharm实现刮刮乐

 导语

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

大家猜猜看是谁写的?

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

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

正文

1)环境安装

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

模块安装:pip install   pygame

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

 2)正式敲代码

2.1定义必要常量

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

2.2设置随机读取图片

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

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

2.3主程序

  1. def main():
  2. pygame.init()
  3. pygame.mixer.init()
  4. pygame.mixer.music.load(BGMPATH)
  5. pygame.mixer.music.play(-1, 0.0)
  6. pygame.mouse.set_cursor(*pygame.cursors.diamond)
  7. screen = pygame.display.set_mode(SCREENSIZE)
  8. pygame.display.set_caption('小程序——唯美古风')
  9. surface = pygame.Surface(SCREENSIZE).convert_alpha()
  10. surface.fill(GRAY)
  11. image_used = readImageRandomly()
  12. while True:
  13. for event in pygame.event.get():
  14. if event.type == pygame.QUIT:
  15. pygame.quit()
  16. sys.exit(-1)
  17. mouse_event_flags = pygame.mouse.get_pressed()
  18. if mouse_event_flags[0]:
  19. pygame.draw.circle(surface, WHITE, pygame.mouse.get_pos(), 40)
  20. elif mouse_event_flags[-1]:
  21. surface.fill(GRAY)
  22. image_used = readImageRandomly()
  23. screen.blit(image_used, (0, 0))
  24. screen.blit(surface, (0, 0))
  25. pygame.display.update()

3)效果图展示

3.1  part 随机图一

 3.2  part 随机图二

  3.3  part 随机图三

 总结

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

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

素材包+打包的项目源码:微信公众号——Python顾木子吖  即可免费获取!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/549583
推荐阅读
相关标签
  

闽ICP备14008679号