python实现月食效果实例代码

 更新时间:2019年06月18日 14:56:54   投稿:laozhang  
在本文里小编给大家整理了关于python实现月食效果的相关实例内容以及对应代码,有兴趣的朋友们学习下。

我们在学习Python当中的pygame模块时,我们都知道我们可以通过使用 pygame模块实现很多功能性的东西,但是很多人应该不知道怎么通过使用pygame实现月食的效果吧,接下来我就教大家如何利用pygame模块实现月食的效果吧,总代码量都用不到40行代码就可以实现哦,希望对你们有所帮助

第一步:先打开我们的pycharm软件,然后新建一个Python文件

第二步:新建好我们的文件之后,我们在编辑界面输入以下代码:

import pygame
import sys #导入模块

#设置窗体图形界面
screen=pygame.display.set_mode((700,500)) #设置窗体的屏幕宽高,screen变量接收屏幕
pygame.display.set_caption("吴秀柔 16级计科2班") #设置窗体的标题

#月亮
moonImage='image/moon.png' #定位图片
moon=pygame.image.load(moonImage) #加载图片

#地球阴影
earthshadowImage='image/blackMoon.png' #定位图片
earthshadow=pygame.image.load(earthshadowImage) #加载图片

#覆盖轨迹的背景
backgroundImage='image/blackBG.png' #定位图片
background=pygame.image.load(backgroundImage) #加载图片
x=450 #初始化位置,以X轴为移动方向
#绘制图片在窗体上
while True:
  screen.blit(background,(0,0)) #用来覆盖地球走的路径
  screen.blit(moon,(100,100)) #月亮所在的位置
  screen.blit(earthshadow,(x,100)) #地球阴影运行的初始位置
  if x<=0: #地球阴影移动的动作
    x+=1
  else:
    x-=1

  #消息事件循环,判断退出
  for event in pygame.event.get(): # 获得一个事件的列表
    if event.type == pygame.QUIT: #如果事件类型,退出
      sys.exit() #安全退出
  pygame.display.update() #刷新画面


第三步:编写好我们的代码之后,我们点击鼠标右键或者同事按住Ctrl+shift+F10进行代码的运行编译

第四步:这时候我们就可以看到效果了,由于这里我的月食遮罩是以X轴为运动方向移动,进行月食效果的,所以它的月食轨迹是缓慢运行的

第五步:在这次代码中,我们共用到了三张图片,一个是全黑色的遮罩,注意这个遮罩的大小要与我们的窗体屏幕大小一致或者更大,这样才能够完全遮住,而且在这里使用的图片都是透明背景的图片

第六步:很多人都不太清楚自己在制作图片时,为什么总是不是透明图层,注意:在对图片处理时,之后后缀为.png的图片才具有透明效果,如果本来你在处理时时透明背景,结果保存到使用时却不是透明图层,这可能是你保存的格式不对,注意检查一下

第七步:以上就是我实现的月食效果,每一行都进行了注释,希望对你们有所帮助。这次是实现的月食效果总代码量都用不到40行,可以说是非常少了*_*,大家没事可以自己操作试试看,有不足之处大家多多见谅啦

相关文章

  • python实现批量压缩指定目录下的文件夹

    python实现批量压缩指定目录下的文件夹

    这篇文章主要介绍了利用Python实现批量压缩指定目录下的文件夹的示例代码,文中代码示例讲解详细,感兴趣的小伙伴快跟随小编一起动手试一试
    2023-08-08
  • Python Pygame实战之欢乐打地鼠游戏

    Python Pygame实战之欢乐打地鼠游戏

    打地鼠是一款比较经典的敏捷类游戏,我们可以在许多商场门口看到这类游戏机,在电脑和手机上也有许多类似的游戏。本文将用Python中的Pygame库实现这一游戏,需要的可以参考一下
    2022-02-02
  • python标准库压缩包模块zipfile和tarfile详解(常用标准库)

    python标准库压缩包模块zipfile和tarfile详解(常用标准库)

    在我们常用的系统windows和Linux系统中有很多支持的压缩包格式,包括但不限于以下种类:rar、zip、tar,这篇文章主要介绍了python标准库压缩包模块zipfile和tarfile详解(常用标准库),需要的朋友可以参考下
    2022-06-06
  • TensorFlow中如何确定张量的形状实例

    TensorFlow中如何确定张量的形状实例

    这篇文章主要介绍了TensorFlow中如何确定张量的形状实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • Python实现构建一个仪表板的示例代码

    Python实现构建一个仪表板的示例代码

    这篇文章主要为大家详细介绍了Python如何实现构建一个仪表板,文中的示例代码讲解详细,具有一定的参考价值,感兴趣的小伙伴可以了解一下
    2023-03-03
  • Django自定义模板过滤器和标签的实现方法

    Django自定义模板过滤器和标签的实现方法

    这篇文章主要介绍了Django自定义模板过滤器和标签的实现方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • Python3实现将本地JSON大数据文件写入MySQL数据库的方法

    Python3实现将本地JSON大数据文件写入MySQL数据库的方法

    这篇文章主要介绍了Python3实现将本地JSON大数据文件写入MySQL数据库的方法,涉及Python针对json大数据文件的逐行读取、mysql数据库写入等相关操作技巧,需要的朋友可以参考下
    2018-06-06
  • python实现MongoDB的双活示例

    python实现MongoDB的双活示例

    本文主要介绍了python实现MongoDB的双活示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • python中GIL的原理及用法总结

    python中GIL的原理及用法总结

    在本篇文章里小编给大家整理的是一篇关于python中GIL的原理及用法总结内容,有需要的朋友们可以学习参考下。
    2021-03-03
  • python selenium模拟点击问题解决方案

    python selenium模拟点击问题解决方案

    这篇文章主要介绍了python selenium模拟点击问题,涉及到安装谷歌浏览器和浏览器驱动的相关知识介绍,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05

最新评论