贼好玩!几行代码将童年游戏搬上屏幕!
文 | 闲欢
来源:Python 技术「ID: pythonall」
80后和90后的小伙伴们,你们是否还记得这个小小的掌上游戏机?
没有玩过这个游戏机的小伙伴的童年是不完整的!
在那个物质匮乏的年代,没有 Switch 游戏机,没有手机,也没有 pad,我们只有掌上俄罗斯和小霸王学习机!
看到这个图片,是不是勾起了童年的记忆?
还想不想再玩一下,回味童年的感觉?
没问题!这就送给你!
最近在浏览 GitHub 开源项目的时候,无意中发现了一个神奇的项目 —— free-python-games 。大家看这个项目名称,肯定能猜到这个项目的大致内容,跟 python 和 游戏有关。
没错,这个项目包含了好多我们小时候在掌上游戏机玩的小游戏,你只要几行代码就可以在电脑上开始玩。作为上班偶尔的摸鱼娱乐项目还是很不错的。
安装
安装包
第一步,我们需要安装这个开源包:
pip install freegames
使用命令
我们可以通过下面的命令来查看命令行帮助:
python -m freegames --help
运行命令后,我们可以看到命令行输出:
usage: freegames [-h] {list,copy,show} ...Free Python Gamespositional arguments:{list,copy,show} sub-command helplist list gamescopy copy game source codeshow show game source codeoptional arguments:-h, --help show this help message and exitCopyright 2017 Grant Jenks
我们可以看到这里有 list,copy,show 操作,分别是列举游戏列表、复制游戏源码、展示游戏源码等。
下面我们使用一下 list 命令:
python -m freegames list
我们可以看到小游戏列表:
ant
bagels
bounce
cannon
connect
crypto
fidget
flappy
guess
life
maze
memory
minesweeper
pacman
paint
pong
simonsays
snake
tictactoe
tiles
tron
运行游戏也非常简单:
python -m freegames.snake
下面是运行贪吃蛇的命令,运行命令之后,就会弹出一个 GUI 小方框来呈现贪吃蛇游戏了,我们只需要使用键盘的方向键就可以愉快地玩耍了。
至于其他的复制、查看代码之类的,由于每个小游戏的代码就一个文件,代码量也不多,大家可以到这个开源项目去拷贝源代码自己修改运行即可。
有哪些小游戏?
话不多说,我们先来看看这个项目里面有哪些小游戏。
Paint
画图。你只需要用鼠标在画布上点击一下代表开始,然后再点击一下代表结束,就可以画一条线段,通过线段来画画。
通过键盘可以控制线段的颜色(需要将键盘切换到大写字母模式)。
Snake
贪吃蛇。这个不用介绍,大家应该都知道是什么游戏了。通过键盘的方向键就可以控制方向。
Pacman
吃豆人。使用键盘操纵黄色的小饼饼吃完所有的小白点就算过关。但是不能碰到那四个移动的红饼饼。
Cannon
射击。通过鼠标在屏幕上点击来确定石头发射的方向,你需要在那些蓝色的移动物体移动到左侧之前把他们都消灭掉。
Flappy
小雷电。这个小游戏跟雷电类似,你需要上下移动以防止被从右往左移动的黑色大圆饼触碰到。
Tiles
拼图。开局给你一个乱序的数字拼图,中间留一个空格,你需要将这些数字按从小到大、从下向上的顺序排列起来。点击空格旁边的数字,就可以移动数字到空格。
还有很多个其他的小游戏,这里就不一一列举了,大家自己去探索吧!这些小游戏够你玩好长时间了。
总结
作为 Pythoner,不能只想着玩这些小游戏摸鱼,我们需要学习怎么设计和实现这些小游戏。这也是这个项目的初衷——帮助初学者学习 Python。源码也在那里,你可以自己拿来随意修改。作者也在一些游戏上设置了空实现(比如第一个画线的游戏,作者预留了一些实现各种形状的空函数),留待大家自己去完成。
希望大家在找回童年乐趣的同时,也能学到知识!
PS:公号内回复「Python」即可进入Python 新手学习交流群,一起 100 天计划!
老规矩,兄弟们还记得么,右下角的 “在看” 点一下,如果感觉文章内容不错的话,记得分享朋友圈让更多的人知道!
【代码获取方式】
识别文末二维码,回复:python
贼好玩!几行代码将童年游戏搬上屏幕!相关推荐
- 用c语言400行代码小游戏,程序员400行代码制作翻牌游戏解决无聊时间
原标题:程序员400行代码制作翻牌游戏解决无聊时间 上班感觉累,很想放假,但是放假在家又感觉非常无聊,总是不知道干什么,又感觉还不如上班呢,反正无聊不如练练写小游戏吧,即练习了代码,做完后还能接着玩, ...
- 猜猜乐游戏php源码,C/C++百行代码实现热门游戏消消乐功能的示例代码
游戏设计 首先我们需要使用第三方框架,这里我使用的是sfml,不会使用sfml在我的上几篇文章当中-扫雷(上)有详细的开发环境搭建介绍 首先准备图片资源 一张背景图片,一张宝石图片 窗口初始化加载图片 ...
- 2048左移JAVA代码实现,200 行代码实现 2048 游戏
原标题:200 行代码实现 2048 游戏 作者:Guolanzhe 原文: http://www.guolanzhe.com/?p=522创建游戏文件 2048.py 首先导入需要的包: impor ...
- php消消乐代码,C/C++百行代码实现热门游戏消消乐功能的示例代码
游戏设计 首先我们需要使用第三方框架,这里我使用的是sfml,不会使用sfml在我的上几篇文章当中-扫雷(上)有详细的开发环境搭建介绍 首先准备图片资源 一张背景图片,一张宝石图片 窗口初始化加载图片 ...
- python代码翻译-10 行代码,Python 教你自制屏幕翻译工具,有逼格!!
原标题:10 行代码,Python 教你自制屏幕翻译工具,有逼格!! 1. 场景 大家如果平常遇到不认识的英文,相信大部分的人都会复制内容后,使用翻译软件,或者拷贝到网站上去执行翻译. 当然,对于 I ...
- python代码翻译器-10 行代码,Python 教你自制屏幕翻译工具,有逼格!!
原标题:10 行代码,Python 教你自制屏幕翻译工具,有逼格!! 1. 场景 大家如果平常遇到不认识的英文,相信大部分的人都会复制内容后,使用翻译软件,或者拷贝到网站上去执行翻译. 当然,对于 I ...
- python300行代码_Python:游戏:300行代码实现俄罗斯方块
本文代码基于 python3.6 和 pygame1.9.4.python 俄罗斯方块是儿时最经典的游戏之一,刚开始接触 pygame 的时候就想写一个俄罗斯方块.可是想到旋转,停靠,消除等操做,感受 ...
- python编写游戏300行代码_300行代码实现Python游戏:俄罗斯方块
本文代码基于 python3.6 和 pygame1.9.4. 俄罗斯方块是儿时最经典的游戏之一,刚开始接触 pygame 的时候就想写一个俄罗斯方块.但是想到旋转,停靠,消除等操作,感觉好像很难啊, ...
- 《近匠》RealSense:几行代码,为游戏添增实感交互
<近匠>第58期,Cocos2d-x目前已经支持实感技术的扩展,让开发者可以简单通过几行代码,将手势识别.控制等体感操作融合到自己的应用或游戏中.捕鱼达人团队也基于此技术开发了可实现手势操 ...
最新文章
- Ubuntu 8.04嵌入式交叉编译环境arm-linux-gcc搭建过程图解
- 数据结构 二叉树
- Spring Cloud Alibaba到底坑不坑?
- 加载cv2调用摄像头_用Python获取摄像头并实时控制人脸
- 让你的名字在百度排名前列
- React事件优雅绑定
- hdu1010 Tempter of the Bone
- 潭州课堂25班:Ph201805201 django 项目 第三十九课 后台 文章发布,图片上传到 FastDFS后端实现 七牛云讲解(课堂笔记)...
- Modbus协议栈综合实例设计
- XHTML的使用规范
- Google全球副总裁Vint Cerf:中国物联网发展不得不关注的几大问题
- 1024,今天给大家发100个现金红包和思否课程、掘金小册
- 李宏毅深度学习HW2 收入预测 (logistic regression)
- TASKCTL连接不到服务端的几种情况和解决办法
- Docker端口映射实现网络访问
- 关于使用js的setAttribute和getAttribute取dom属性在ie ff safri下的问题
- 短视频如何选择背景音乐和配音?四个技巧来帮忙
- 我在绑定微信账号时出现了问题,提示该微信已绑定其他账号
- valhalla 插件_Java 15:密封类使Valhalla更加接近
- JavaScript的函数(function)