本文目录一览:
- 1、用Python写一个简单的小游戏
- 2、python能开发游戏吗?
- 3、使用 Python 和 Pygame 模块构建一个游戏框架
- 4、python可以开发游戏吗
- 5、怎样用Python做一个2048?
- 6、python入门可以做的小游戏
用Python写一个简单的小游戏
相信大家都玩过俄罗斯方块吧,应该是小时候的回忆吧,但是想不想了解一下这个程序是怎么写出来的呢,自己写出来的应该玩起来更有感觉吧!
感觉还是蛮好玩吧!
接下来,我就分享一下这个游戏的源码过程啊!
先用python创建一个py文件
定义这次程序所需要的类
然后写出它所需要的模块
画背景图
画网格线
# 画已经落下的方块
# 画单个方块
# 画得分等信息
这样就可以写出来一个十分简单的俄罗斯方块啦,是不是觉得还不错呢!
python能开发游戏吗?
能,但不适合。
用锤子能造汽车吗? 谁也没法说不能吧?历史上也确实曾经有些汽车,是用锤子造出来的。但一般来说,还是用工业机器人更合适对吗?
比较大型的,使用Python的游戏有两个,一个是《EVE》,还有一个是《文明》。但这仅仅是个例,没有广泛意义。
一般来说,用来做游戏的语言,有两种。一是C++。。一是C#。。
Python理论上,不仅不适合做游戏,而是只要大型的程序,都不适合。只适合写比较小型的东西,比如一个计算器,一个爬虫等。
主要有2个方面,一是速度慢,二是语法缺陷。
也许你一定觉得,Python的语法又干净,又优雅,怎么还有缺陷?但仔细想想,为什么别的语言没有这么干净?没有这么优雅?明明可以直接a=123 干嘛非要写成 int a=123;呢?难道是其他语言的设计者,都有强迫症吗?道理很简单,有得必有失。
如果数据类型,只有字符串和数字,省略掉声明变量的过程,当然不是问题。但只要逻辑一复杂,情况就完全不同了。。。游戏中,你用C#或C++写起来,大概会是这样。
技能 a=xxxx;
武器 b=xxxx;
角色 c=xxxx;
药水 d=xxxx;
音乐 e=xxxx;
而Python呢?大概是这个样子
a=xxxx
b=xxxx
c=xxxx
d=xxxx
如果你的代码很少,显然是Python比较方便。但如果你创建几百个对象,代码超过1万行。。。写到几千行的时候,遇到一个叫x的对象,你还知道它到底是个啥吗?是一把武器?还是一瓶药水?还是一张图片?一段音频?一盏灯光?一座房子?
不要以为1万行代码很多。。。。1万行连个《斗地主》都写不完。。
用Python写大程序的感觉就是,当你第一天,只写了50行代码,创建了3个类,5个对象。你会觉得太爽了,这绝对是世界上最好的语言。。。第二天,你又创建了2个类,5个对象的时候,就觉得有点晕晕的了。第三天,又创建了2个类之后,你会发现自己必须非常仔细的看一遍注释,否则就不会写了。第四天,你一整天都在看注释。。。。
这就是动态语言的劣根性。一开始代码量少,看不出任何缺点,各种省事,各种爽。代码量越多,脑子越乱。一般500行以上,效率就会被JAVA,C#之类的语言反超。。1000行,就必须要各种加注释才能看懂了。。2000行,注释比代码还多了。。5000行,注释已经完全不管用了,自己根本看不懂自己的代码,需要准备弃坑了。
使用 Python 和 Pygame 模块构建一个游戏框架
在我的 这系列的第一篇文章 中, 我已经讲解如何使用 Python 创建一个简单的、基于文本的骰子 游戏 。这次,我将展示如何使用 Python 模块 Pygame 来创建一个图形化 游戏 。它将需要几篇文章才能来得到一个确实做成一些东西的 游戏 ,但是到这系列的结尾,你将更好地理解如何查找和学习新的 Python 模块和如何从其基础上构建一个应用程序。
在开始前,你必须安装 Pygame 。
有几种方法来安装 Python 模块,但是最通用的两个是:
两个方法都工作的很好,并且每一个都有它自己的一套优势。如果你是在 Linux 或 BSD 上开发,可以利用你的发行版的软件存储库来自动和及时地更新。
然而,使用 Python 的内置软件包管理器可以给予你控制更新模块时间的能力。而且,它不是特定于操作系统的,这意味着,即使当你不是在你常用的开发机器上时,你也可以使用它。pip 的其它的优势是允许本地安装模块,如果你没有正在使用的计算机的管理权限,这是有用的。
如果 Python 和 Python3 都安装在你的系统上,你想使用的命令很可能是 pip3,它用来区分 Python 2.x 的 pip 的命令。如果你不确定,先尝试 pip3。
pip 命令有些像大多数 Linux 软件包管理器一样工作。你可以使用 search 搜索 Python 模块,然后使用 install 安装它们。如果你没有你正在使用的计算机的管理权限来安装软件,你可以使用 --user 选项来仅仅安装模块到你的家目录。
Pygame 是一个 Python 模块,这意味着它仅仅是一套可以使用在你的 Python 程序中的库。换句话说,它不是一个像 IDLE 或 Ninja-IDE 一样可以让你启动的程序。
一个电子 游戏 需要一个背景设定:故事发生的地点。在 Python 中,有两种不同的方法来创建你的故事背景:
你的背景仅是一张图片或一种颜色。你的电子 游戏 人物不能与在背景中的东西相互作用,因此,不要在后面放置一些太重要的东西。它仅仅是设置装饰。
要开始一个新的 Pygame 工程,先在计算机上创建一个文件夹。 游戏 的全部文件被放在这个目录中。在你的工程文件夹内部保持所需要的所有的文件来运行 游戏 是极其重要的。
一个 Python 脚本以文件类型、你的姓名,和你想使用的许可证开始。使用一个开放源码许可证,以便你的朋友可以改善你的 游戏 并与你一起分享他们的更改:
然后,你告诉 Python 你想使用的模块。一些模块是常见的 Python 库,当然,你想包括一个你刚刚安装的 Pygame 模块。
由于你将用这个脚本文件做很多工作,在文件中分成段落是有帮助的,以便你知道在哪里放代码。你可以使用块注释来做这些,这些注释仅在看你的源文件代码时是可见的。在你的代码中创建三个块。
接下来,为你的 游戏 设置窗口大小。注意,不是每一个人都有大计算机屏幕,所以,最好使用一个适合大多数人的计算机的屏幕大小。
这里有一个方法来切换全屏模式,很多现代电子 游戏 都会这样做,但是,由于你刚刚开始,简单起见仅设置一个大小即可。
在脚本中使用 Pygame 引擎前,你需要一些基本的设置。你必须设置帧频,启动它的内部时钟,然后开始 (init)Pygame 。
现在你可以设置你的背景。
在你继续前,打开一个图形应用程序,为你的 游戏 世界创建一个背景。在你的工程目录中的 images 文件夹内部保存它为 stage.png 。
这里有一些你可以使用的自由图形应用程序。
你的图像不必很复杂,你可以以后回去更改它。一旦有了它,在你文件的 Setup 部分添加这些代码:
如果你仅仅用一种颜色来填充你的 游戏 的背景,你需要做的就是:
你也必须定义颜色以使用。在你的 Setup 部分,使用红、绿、蓝 (RGB) 的值来创建一些颜色的定义。
至此,你理论上可以启动你的 游戏 了。问题是,它可能仅持续了一毫秒。
为证明这一点,保存你的文件为 your-name_game.py(用你真实的名称替换 your-name)。然后启动你的 游戏 。
如果你正在使用 IDLE,通过选择来自 “Run” 菜单的 “Run Module” 来运行你的 游戏 。
如果你正在使用 Ninja,在左侧按钮条中单击 “Run file” 按钮。
你也可以直接从一个 Unix 终端或一个 Windows 命令提示符中运行一个 Python 脚本。
如果你正在使用 Windows,使用这命令:
启动它,不过不要期望很多,因为你的 游戏 现在仅仅持续几毫秒。你可以在下一部分中修复它。
除非另有说明,一个 Python 脚本运行一次并仅一次。近来计算机的运行速度是非常快的,所以你的 Python 脚本运行时间会少于 1 秒钟。
为强制你的 游戏 来处于足够长的打开和活跃状态来让人看到它(更不要说玩它),使用一个 while 循环。为使你的 游戏 保存打开,你可以设置一个变量为一些值,然后告诉一个 while 循环只要变量保持未更改则一直保存循环。
这经常被称为一个“主循环”,你可以使用术语 main 作为你的变量。在你的 Setup 部分的任意位置添加代码:
在主循环期间,使用 Pygame 关键字来检查键盘上的按键是否已经被按下或释放。添加这些代码到你的主循环部分:
也是在你的循环中,刷新你世界的背景。
如果你使用一个图片作为背景:
如果你使用一种颜色作为背景:
最后,告诉 Pygame 来重新刷新屏幕上的所有内容,并推进 游戏 的内部时钟。
保存你的文件,再次运行它来查看你曾经创建的最无趣的 游戏 。
退出 游戏 ,在你的键盘上按 q 键。
在这系列的 下一篇文章 中,我将向你演示,如何加强你当前空空如也的 游戏 世界,所以,继续学习并创建一些将要使用的图形!
via:
作者: Seth Kenlon 选题: lujun9972 译者: robsean 校对: wxy
python可以开发游戏吗
使用Python开发游戏可以吗?用Python开发游戏完全没有问题,游戏里面要用到一些全局变量、加载资源、创建开始界面、开始游
戏,舞台层鼠标点击事件的监听器是startGame函数,也就是我们点击开始界面就开始游戏。
首先打开命令行,使用PyPI下载Pygame包(输入命令pip install pygame)
使用Python开发游戏步骤:
1、打开python编辑器(vs,IDLE,或其他),再引入包定义一些需要用到的数据
2、先使用pygame包创建一个游戏窗口,然后使用循环将窗口展示出来
3、现在定义一个可操控的小球类Player,draw()方法可以使它展示在屏幕上,update()方法让小球跟随鼠标移动
4、类似的,定义不可操控的小球类Ball,使用random包使它随机移动
5、再对Player小球进行碰撞检测,遇到大球就被吃掉,游戏自动退出,遇到小球就吃掉小球,并且增大自己体积,并加入到Player小球
的update()方法中
6、类定义完毕了,再创建对象,将多个Ball类对象加入列表
7、调用各个对象的draw()方法与update()方法
8、最后一步控制帧率,使用pygame.time.Clock().tick(60)将帧率控制在60帧
python开发游戏的库平台pygame,pygame是python的一个跨平台模块,专门为设计电子游戏而开发,建立在SDL基础上,允许开发
者快速的开发出自己的游戏而又不被低级语言束缚,这个库的安装和简单使用,实验环境win10,python版本为python3.6。
推荐学习《python教程》。
怎样用Python做一个2048?
首先用明白2048的游戏规则,具体是由12个方格组成起初从2开始拼,相邻的2可以得到4,相邻的4可以得到8,相邻的8可以得到16一直累加直到出现2048游戏结束
python入门可以做的小游戏
1、Python入门拼图小游戏
简单介绍:
将图像分为m×n个矩形块,并将图像右下角的矩形块替换为空白块后,将这些矩形块随机摆放成原图像的形状。
2、Python入门推箱子小游戏
简单介绍:
这是来自日本的一个经典游戏,在狭小的仓库中,要求把木箱放到指定的位置,如果不小心就可能出现箱子无法移动或者通道被堵的情况,所以,如何巧妙利用有限的空间和通道,合理安排移动顺序,就成了这个游戏能否通关的关键。
3、Python入门小游戏之外星人入侵
简单介绍:
玩家可以通过鼠标控制飞船的移动和射击,如果能在敌人达到游戏界面低端之前消灭所有敌人,则游戏胜利,否则游戏失败。
4、Python入门小游戏之吃豆子
简单介绍:
通过键盘方向键,控制游戏的人物吃豆人,吃掉藏在迷宫内的所有豆子,并且不能被敌人抓到。
5、Python入门小游戏之宝石消消乐
简单介绍:
玩家通过鼠标交换相邻的拼图,若交换后,在水平/竖直方向存在连续三个相同的拼图,则这些拼图消失,玩家得分。
6、Python入门小游戏之乒乓球对战
简单介绍:
中间是球网,玩家通过上下键移动球拍,并且这个游戏是可以两个人玩的哦。
7、还有其他四个游戏
它们是:炸弹人小游戏、逃出迷宫、飞扬的小鸟、五子棋
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, website.service08@gmail.com 举报,一经查实,本站将立刻删除。