pygame

飞机大战-面向对象-pygame

最后都变了- 提交于 2020-05-03 18:02:14
飞机大战 最近学习了python的面向对象,对面向对象的理解不是很深刻。 面向对象是数据和函数的'打包整理',将相关数据和处理数据的方法集中在一个地方,方便使用和管理。 本着学习的目的,在网上找了这个飞机大战游戏的素材和相关代码,自己研究学习,加深对面向对象的理解。 python可以做游戏,最基本的一个第三方模块就是 pygame ,借助pygame可以实现2D和3D游戏的开发。 对python开发游戏感兴趣的园友请参考官方文档: pygame.doc 下面就开始学习了解对象思想吧,顺便学学pygame,娱乐一下。 游戏需求 # 飞机大战 <1> 玩机通过键盘操作我方飞机,我方飞机自动发射初级子弹。 <2> 敌机分三种:小型敌机、中型敌机、大型敌机,区别:速度不同,数量不同,外形不同,血值不同。 <3> 小型敌机速度快,数量多,一颗子弹必杀;大型敌机和中型敌机速度慢,数量少,需要多可子弹才能消灭。 <4> 小型敌机分值低,大型敌机和中型敌机分值高。 <5> 统计玩机得分和最高分记录。 <6> 随着得分的增加,提升游戏等级,增加游戏的难度:增加敌机速度和数量 <7> 任意敌机和我方飞机碰撞,则玩家挑战失败一次;玩家有三次挑战机会。三次机会用完结束游戏。 <8> 我方飞机和敌机毁灭时,动画效果要实现 <9> 游戏中,每隔30s有一次随机空投补给:全屏炸弹或超级子弹。 <10> 游戏开始

飞机大战-面向对象-pygame

怎甘沉沦 提交于 2020-05-03 17:46:04
飞机大战 最近学习了python的面向对象,对面向对象的理解不是很深刻。 面向对象是数据和函数的'打包整理',将相关数据和处理数据的方法集中在一个地方,方便使用和管理。 本着学习的目的,在网上找了这个飞机大战游戏的素材和相关代码,自己研究学习,加深对面向对象的理解。 python可以做游戏,最基本的一个第三方模块就是 pygame ,借助pygame可以实现2D和3D游戏的开发。 对python开发游戏感兴趣的园友请参考官方文档: pygame.doc 下面就开始学习了解对象思想吧,顺便学学pygame,娱乐一下。 游戏需求 # 飞机大战 <1> 玩机通过键盘操作我方飞机,我方飞机自动发射初级子弹。 <2> 敌机分三种:小型敌机、中型敌机、大型敌机,区别:速度不同,数量不同,外形不同,血值不同。 <3> 小型敌机速度快,数量多,一颗子弹必杀;大型敌机和中型敌机速度慢,数量少,需要多可子弹才能消灭。 <4> 小型敌机分值低,大型敌机和中型敌机分值高。 <5> 统计玩机得分和最高分记录。 <6> 随着得分的增加,提升游戏等级,增加游戏的难度:增加敌机速度和数量 <7> 任意敌机和我方飞机碰撞,则玩家挑战失败一次;玩家有三次挑战机会。三次机会用完结束游戏。 <8> 我方飞机和敌机毁灭时,动画效果要实现 <9> 游戏中,每隔30s有一次随机空投补给:全屏炸弹或超级子弹。 <10> 游戏开始

超级玛丽的 python 实现

孤街醉人 提交于 2020-05-02 17:43:42
超级玛丽的 python 实现 在经过三四天的摸索,参考了Github上的一个大神的代码的前提下,也算是初步搭建起了自己的超级玛丽,下面就给大家分享一些自己踩的坑。 这里是 Github上大神的代码 ,对超级玛丽的第一关进行了很好的还原。 推荐一下Github上一个pygame的 游戏仓库 推荐一本《python和pygame游戏开发指南》,想要深入研究的朋友可以去翻阅一下 关于 pygame 模块可以查看 官方文档 ,这里还推荐一下CSDN上的 中译版 ,毕竟官网的配色比较靓眼。或者看我前一篇博客的大致整理。这里移步 个人博客 在开始之前你需要: 掌握 python 的基本语法 熟悉 pygame 模块的基本使用 由于pygame游戏的基本入门在之前一篇博客中有见过这里就不再赘述 1. 画面和角色的导入 创建屏幕、从图片中导入Mario # 屏幕创建和初始化参数 self . screen = pygame . display . set_mode ( ( WIDTH , HEIGHT ) ) self . rect = self . screen . get_rect ( ) pygame . display . set_caption ( TITLE ) # 加载关卡图片 self . background = load_image ( 'level.png' ) self

Python与Java-你首选哪个?

大兔子大兔子 提交于 2020-05-02 15:47:07
  关于开发人员来说,争辩最多的话题是PythonvsJava!是!这两种言语是著名的,具有不同的功用和功用。可是,哪一个简略易学?哪个最合适你的下一个编程项目?让咱们在这儿评论所有这些工作。   编程言语在计算机科学中势在必行,它们是程序员东西包中的根本东西。编程言语有许多种,开发人员一般会挑选符合他们要求的言语。   这儿一件难事是“挑选”。程序员在挑选言语时有必要做出正确的挑选。它一般令人困惑,尤其是在Java和Python之间进行挑选时。依据GitHub的说法,这两种最盛行的编程言语都很风趣,而且分别位居第二和第三。   它们很受欢迎,很有效,而且随时都派上用场,这使挑选愈加稳健。两种言语都将保留下来,而且它们常常会使开发人员感到困惑。因此,在本文中,您将知道其间哪一个是高度牢靠的。此方案是一个快速比较,使您的挑选变得简略简略。假如您对为下一个项目挑选Java或Python感到困惑,请阅览本文,您肯定会有所想法。    Python与Java|Google趋势比较   是!Google趋势陈述说,Python比Java查找更多。可是你能够依据需求和项目规模挑选编程言语。   Python与Java更新   Java和Python之间有许多相似之处。关于初学者来说,它们都是十分好的和高效的。他们一般将简直所有输入都视为对象。两者都具有惊人的跨渠道支撑,而且也有许多库

BUAA 2020 软件工程 热身作业

让人想犯罪 __ 提交于 2020-05-01 05:13:18
BUAA 2020 软件工程 热身作业 Author: 17373051 郭骏 项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 第一次作业-热身! 我在这个课程的目标是 学习软件工程的开发知识,培养工程化开发能力 这个作业在哪个 具体方面 帮助我实现目标 从过去、现在和将来剖析自己,更加了解自己 作业正文...... 见下 其他参考文献... 博客1 博客2 博客3 博客4 第一部分 结缘计算机 你为什么选择计算机专业?你认为你的条件如何?和这些博主比呢? 我认为,我能够在大学选择计算机专业,是兴趣使然,也是赶上了机遇的浪尖。 在上大学之前,我从来没有学过像样的编程,也没有想过将计算机当做专业来学习、当做工作来看待。我在小县城长大,那里没有适当的计算机教育,人们也对计算机没有足够的了解。那里只有大量的黑网吧,不分年龄地接受着各种游戏玩家。家长们只是觉得“电脑”是玩具,是会耽误学习的“电子海洛因”,而我却偏爱电脑游戏,因而经常会受到家长的唠叨。 不过,每次在我沉迷于电脑游戏时,我的父亲对我说的最多的一句话就是:“只会玩游戏不算本事,要能够做出游戏给别人玩,这才有意义。”我深以为然。因而在玩游戏之余,我也经常研究如何做游戏。我会思考,为什么按下键盘角色会动,为什么能够做到动画播放和事件判断,为什么网络游戏可以将大家连接起来一起游玩…

《黑客帝国》中的代码雨让人身临其境!利用Python轻松实现!

痴心易碎 提交于 2020-04-28 10:49:08
前言 《黑客帝国》的一段代码雨片段让外行人感觉非常震撼,但其实利用咱们的Python来做出这个效果真的很简单! 今天就带大家把这个代码雨放在自己的显示器上面,亲身体验一把黑客的感觉! 环境 Windows 操作系统 Python 解释器 pycharm 编辑器 random 随机数模块 pygame GUI界面模块 实战 设置代码雨窗口的宽高以及字体文件 import random import pygame PANEL_width = 1100 PANEL_highly = 600 FONT_PX = 15 pygame.init() # 创建一个可是窗口 winSur = pygame.display.set_mode((PANEL_width, PANEL_highly)) font = pygame.font.SysFont("123.ttf", 25) bg_suface = pygame.Surface((PANEL_width, PANEL_highly), flags=pygame.SRCALPHA) pygame.Surface.convert(bg_suface) bg_suface.fill(pygame.Color(0, 0, 0, 28)) winSur.fill((0, 0, 0)) 代码雨可以随机飘落数字,当然也可以是字母,所以这里有两个版本

《黑客帝国》中的代码雨让人身临其境!利用Python轻松实现!

断了今生、忘了曾经 提交于 2020-04-26 16:09:38
前言 《黑客帝国》的一段代码雨片段让外行人感觉非常震撼,但其实利用咱们的Python来做出这个效果真的很简单! 今天就带大家把这个代码雨放在自己的显示器上面,亲身体验一把黑客的感觉! 环境 Windows 操作系统 Python 解释器 pycharm 编辑器 random 随机数模块 pygame GUI界面模块 实战 设置代码雨窗口的宽高以及字体文件 import random import pygame PANEL_width = 1100 PANEL_highly = 600 FONT_PX = 15 pygame.init() # 创建一个可是窗口 winSur = pygame.display.set_mode((PANEL_width, PANEL_highly)) font = pygame.font.SysFont("123.ttf", 25) bg_suface = pygame.Surface((PANEL_width, PANEL_highly), flags=pygame.SRCALPHA) pygame.Surface.convert(bg_suface) bg_suface.fill(pygame.Color(0, 0, 0, 28)) winSur.fill((0, 0, 0)) 代码雨可以随机飘落数字,当然也可以是字母,所以这里有两个版本

python多媒体应用:从0到1教会你制作中文文字雨

最后都变了- 提交于 2020-04-26 08:20:32
最近浏览了很多关于用Python和Pygame实现代码雨的案例,发现很多都是没有深入讲解代码的整个实现过程,更多的只是分享了代码,作为初学者,这些代码看不懂,作为已经懂的人,这些代码可能用处不大,因此,有了这篇博文。 这篇博文的初衷是: 从0到1教会你制作中文文字雨 。 然后在介绍的过程中,我也将深入介绍Pygame的基础知识,让你从一个小白,学完之后也能对Pygame有一个宏观的认识。 好的,下面正式进入主题。 一、pygame介绍 pygame是一个非常非常火的游戏库,那么作为游戏,我相信大家第一印象就是包括:游戏的主界面、游戏里面酷炫的动态效果。 作为技术人员,应该先关注如下几点准备动作。 (一)pygame库的安装 (二)pygame的初始化和退出 (三)pygame界面的坐标系 (一)pygame库的安装 这个相信大家都懂了,就不深入介绍了。 pip install pygame (二)pygame的初始化和退出 要使用 pygame 提供的所有功能之前,需要调用 init 方法,在游戏结束前需要调用一下 quit 方法 方法 说明 pygame.init() 导入并初始化所有 pygame 模块,使用其他模块之前,必须先调用 init 方法 pygame.quit() 卸载所有 pygame 模块,在游戏结束之前调用! (三)pygame界面的坐标系 在游戏中

Pyinstaller (python打包为exe文件)

霸气de小男生 提交于 2020-04-23 10:54:33
需求分析: python脚本如果在没有安装python的机器上不能运行,所以将脚本打包成exe文件,降低脚本对环境的依赖性,同时运行更加迅速。 当然打包的脚本似乎不是在所有的win平台下都能使用,win7有一部分不能使用,我在win10能够很好的运行。 准备: pyinstaller ( http://www.pyinstaller.org ) 首先还是去官网看支持的python版本,不然会很尴尬的。 安装: 需要安装pyinstaller和pywin32 使用以下命令将会自动安装两个包,在cmd用pip命令 方法一: pip install -i https://pypi.douban.com/simple/pyinstaller(豆瓣源) 方法二: pip install pyinstaller(会自动下载future, pywin32, pyinstaller) 运行方式: 1、cmd进入到安装pyinstaller的python环境下的/python/scripts目录 找到pyinstaller.exe。 2、执行命令: pyinstaller.exe -F path:demo.py 案例: 将D:\pythonProject\python3.5\september19\calculator.py文件打为exe可执行文件 # 1

python an上下.

淺唱寂寞╮ 提交于 2020-04-21 08:42:22
https://www.cnblogs.com/dbf-/p/11149299.html https://blog.csdn.net/u013783095/article/details/79630358 # 获取事件,比如按键等 for event in pygame.event.get(): # 判断是否是点击了退出按钮 if event.type == QUIT: print("exit") exit() # 判断是否是按下了键 elif event.type == KEYDOWN: # 检测按键是否是a或者left if event.key == K_a or event.key == K_LEFT: print('left') # 检测按键是否是d或者right elif event.key == K_d or event.key == K_RIGHT: print('right') # 检测按键是否是w或者up elif event.key == K_w or event.key == K_UP: print("up") # 检测按键是否是s或者down elif event.key == K_s or event.key == K_DOWN: print("down") # 检测按键是否是空格键 elif event.key == K_SPACE: print(