这个 Python 游戏库,打开就能玩一天

2023-05-16

会 Python 的小伙伴,选择用 Python 让“大风车”吱呦呦地转!还有的小伙伴,选择用 Turtle 库绘制童年的卡通人物

我们其实还可以选择用 Python 开发小游戏,回忆童年的美好时光。

“凹凸版”吃豆子

这次并非用pygame制作的,而是一个很有趣的库:free-python-games

文章目录

    • 技术交流
    • 安装使用
    • 游戏大全
      • 吃豆子(pacman)
      • 贪吃蛇(snake)
      • 井字棋(tictactoe)
      • "飞翔的小鸟"(flappy)
      • 迷宫(maze)
      • 数字推盘(tiles)
    • 自定义

技术交流

技术要学会分享、交流,不建议闭门造车。 本文技术由粉丝群小伙伴推荐分享。源码、数据、技术交流提升,均可加交流群获取,群友已超过3000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友。

方式①、添加微信号:dkl88191,备注:来自CSDN +技术交流
方式②、微信搜索公众号:Python学习与数据挖掘,后台回复:加群

安装使用

GitHub 地址:https://github.com/grantjenks/free-python-games

free-python-games 是 Apache2 许可的免费 Python 游戏集合,用于教育和娱乐。这些游戏是用简单的 Python 代码编写的,专为实验和更改而设计。其中还包括几个经典街机游戏的简化版本。

安装(清华源):

pip install freegames  -i https://pypi.tuna.tsinghua.edu.cn/simple  

安装完后,我们在命令行继续运行以下语句,

python -m freegames --help  

可以看到:freegames支持三个命令:list、copy 和 show。想查看查看所有的游戏列表,可以运行

python -m freegames list  

包含了 21 款小游戏:吃豆子、井字棋、贪吃蛇、飞翔的小鸟、迷宫、迷宫等等。

下面会给大家挨个介绍,并演示这些经典的游戏。

游戏大全

本文中任何列出的游戏,都可以通过在命令行执行 Python 模块来玩。

只需要将“freegames”与游戏名称结合起来。例如,要玩“贪吃蛇”游戏,就在命令行运行:

python -m freegames.snake  

这样游戏就轻松运行起来啦。

下面简单介绍几个经典游戏,及其具体玩法。

吃豆子(pacman)

吃豆子,这是一款非常经典的街机游戏。使用箭头键控制方向,并吃掉所有的白色食物。当心在迷宫中漫游的红色幽灵。

贪吃蛇(snake)

使用箭头键导航和吃绿色食物。每吃一次食物,蛇就会长一段。避免自己吃东西或越界!

井字棋(tictactoe)

单击屏幕以放置 X 或 O。连续连接三个,你就赢了!

“飞翔的小鸟”(flappy)

低配版"飞翔的小鸟",点击屏幕来扇动你的翅膀。

当你飞过飞行时,请注意"黑乌鸦"。

迷宫(maze)

从一侧移动到另一侧。点击屏幕来画出,从左侧到右侧的行走路径。

数字推盘(tiles)

这是已开将数字滑动到位的益智游戏,类似于华容道。

单击与空方块相邻的图块以交换位置,最终实现方块从左到右从下到上,排布为 1 到 15。

自定义

当然我们不止满足这些,爱动手的小伙伴肯定希望能够自己魔改游戏。

python -m freegames show pacman  

show命令可以在命令行中展示此游戏的代码。如果想修改游戏,可以使用 copy 命令。运行后就会在本地目录中,复制创建一个 Python 游戏文件。

python -m freegames copy pacman  

接下来就可以魔改游戏啦。

比如我就是重新设置了一下,“吃豆子”游戏的布局。

在这里插入图片描述

突然发现“凹凸”两个字,好适合自定义路线啊。

好了,大家如果感兴趣的话,不妨去试试。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

这个 Python 游戏库,打开就能玩一天 的相关文章

随机推荐

  • JS的DOM操作——style的操作

    对于JS操作文档中的元素 xff0c 改变其的样式特征需要用到一个属性 style 常见操作 xff1a 获取的元素点 xff08 xff09 style xx 需要设置或修改的属性 代码演示 xff1a 例如修改div块的背景颜色 lt
  • 学会iframe并用其解决跨域问题

    了解iframe 官方定义为 xff1a iframe是HTML标签 xff0c 作用是文档中的文档 xff0c 或者浮动的框架 FRAME iframe元素会创建包含另外一个文档的内联框架 xff08 即行内框架 xff09 简单理解为
  • Vue中的样式绑定

    我们将样式绑定分为两种 xff1a 一种是通过style绑定 xff0c 一种是通过class绑定 样式绑定适用于 切换效果的实现 xff0c 小规模用style xff0c 大规模用class style绑定样式 这里需要用到v bind
  • 51 汇编语言编程:8个按键控制8个LED

    89C51汇编语言写8个按键控制8个LED 按键接P2口 xff0c LED接P1口 有6按键 xff0c 按下对应LED长亮 xff0c 重复按下 xff0c LED灭 xff1b 有两个特殊按键 xff0c 按下 xff0c 对应LED
  • 常见的排序算法

    今天来学习一下数据结构课程中非常重要的排序算法 我们学习一下一些常见的排序算法 xff0c 如冒泡排序 选择排序 快速排序等 1 冒泡排序 实现思路 xff1a 对未排序的各元素从头到尾依次比较相邻的两个元素大小关系 如果左边的队员大 则两
  • Vue的仓库vuex

    Vue js是一个渐进式的框架 xff0c 是一个分层的设计模式 一共分为五层 xff0c 核心库为基础 xff0c 在这基础上添加组件系统 客户端路由 大规模状态管理和开发环境 其中大数据状态管理对应的技术就是vuex xff0c 它是由
  • vue3.0的setup函数以及解决其内的数据不是响应式数据的问题

    相比于2 0 xff0c vue3 0在新增了一个setup函数 xff0c 我们在setup中可以写数据也可以写方法 xff0c 就像我们以前最开始学习js一样 xff0c 在js文件中写代码 如 xff1a setup let name
  • setup中使用watch

    watch属性监听器的作用在vue3 0中没有改变 xff0c 还是监听值得变化 在vue3 0中 xff0c 仍然支持watch配置项 但是我们要在setup中使用watch得话 xff0c 我们要导入watch的API xff0c 然后
  • 缓存相关知识点

    缓存的优点 1 减少不必要的数据传输 xff0c 节省带宽 2 减轻服务器负担 xff0c 提升网站性能 3 加快客户端网页加载速度 4 用户体验更好 缺点 如果资源发生更改 xff0c 客户端不及时更新会导致用户获取信息滞后 缓存类型 分
  • hook之useMemo

    useMemo 这个hook的作用有点像我们以前学习的计算属性一样 xff0c 它会缓存我们上次的结果 xff0c 只有当特定的属性改变时才从新计算 并且他能 记住 任何类型的值 标准写法 useMemo 61 gt return 34 我
  • hook之useContext

    useContext这个hook xff0c 我们通过翻译就可以大致知道它的用途 xff0c 译为使用上下文 context上下文我们在前面就已经使用过了 xff0c 它是一种用于跨组件之间的传值的技术 我们学过Context xff0c
  • hook之useRoducer

    useReducer用最简单的话来说 xff0c 就是允许我们在函数组件里面像使用redux一样通过reducer和action来管理我们组件状态的变换 我们可以通过useContext配合实现一个函数组件中的redux useReduce
  • linux安装jenkins 【详细教程】

    1 确保jdk已经安装 xff0c 至少是java8以上 xff0c 如果没有安装 xff0c 可以参考https blog csdn net m0 59347746 article details 125681582 csdn share
  • 【笔记】SQL 2

    1 比较运算符 比较运算符用于比较运算 xff0c 判断逻辑是否成立 A operator B 常用的比较运算符有 61 xff08 等于 xff09 61 xff08 不等于 xff09 lt gt xff08 不等于 xff09 lt
  • Qt Creator 3.0.1 部署远程调试

    QT Creator3 0 1 部署远程调试 远程目标板连接配置 从菜单栏选择options gt devices gt add gt generic linux device gt 开始向导 输入目标板的IP与登录用户信息 完成后会自动测
  • 代码源oj--数据结构初级:105 字符串处理1

    给定一个长度为n的字符串s xff0c 字符串由小写字母a z组成 小明来对这个字符串进行操作 xff0c 他会从头到尾检查这个字符串 xff0c 如果发现有两个相同的字母并排在一起 xff0c 就会把这两个字符都删掉 小明会重复这个操作
  • Python 视频转字符画 - 进阶

    昨晚我在网上看到了别人做的视频转字符动画 xff0c 觉得很厉害 xff0c 我于是也打算玩玩 今天中午花时间实现了这样一个小玩意 顺便把过程记录在这里 1 源视频 xff1a https docs qq com doc DU3pabWFh
  • Python教程 - Tkinter布局

    之前的Tkinter教程中 xff0c 我们创建的控件默认都是从上到下依次排列的 实际上 xff0c 我们可以完全控制每个控件的位置 Tkinter主要提供pack grid place三种布局方法 pack布局 pack布局 xff0c
  • java实现字符串中的字母排序

    String str 61 34 chenughonghuiaikuangwantong1314 34 System out println 34 原字符串 xff1a 34 43 str char chars 61 str toCharA
  • 这个 Python 游戏库,打开就能玩一天

    会 Python 的小伙伴 xff0c 选择用 Python 让 大风车 吱呦呦地转 xff01 还有的小伙伴 xff0c 选择用 Turtle 库绘制童年的卡通人物 我们其实还可以选择用 Python 开发小游戏 xff0c 回忆童年的美