Python开发游戏?也太好用了吧

article/2025/9/7 1:46:28

程序员宝藏库:https://gitee.com/sharetech_lee/CS-Books-Store

当然可以啦!

现在日常能够用到和想到的场景,绝大多数都可以用Python实现。

效果怎么样暂且不提,但是得益于丰富的第三方工具包,的确让Python能够很容易处理各种各样的场景。

对于游戏开发也是这样,如果真的要想商业化,Python在游戏开发方面肯定没办法和C++相提并论,但是如果用于日常学习和自己玩一玩,Python绝对是够的。

今天,就来给大家介绍8个非常不错的Python游戏开源项目。

1. free-python-games

Star:2.6k

贪吃蛇、迷宫、吃豆人、扫雷、Flappy Bird…这些游戏可以是非常经典,甚至伴随着很多人的童年回忆。那么,你是否想过自己开发一款专属游戏?是否思考过开发这样一款游戏需要多少工作量?

img

free-python-games这个项目给出的答案是50-100行!

几年前,我姐就曾表达了希望我能够抽空教外甥学习编程的想法。对于这份嘱托,我一直放在心上,但是却迟迟找不到合适的方向。

  • 该从哪个方向着手教一个孩子学习编程?
  • 怎么提升一个小孩子对编程的兴趣?

即便是从事几年互联网行业的我来说都对编程都觉得枯燥乏味,何况一个一无所知的孩子呢?

但是,free-python-games这个项目让我眼前一亮,终于找到了一个合适的Python学习项目。当年,它对于成年人同样适用、有价值。

我之所以介绍这款项目,不单单是它实现了让人回到童年的经典游戏。更重要的原因是它能够作为一个Python学习、锻炼探索和理解能力的一款好工具。

free-python-games和我们接触的大多数Python库那样让人如同垒积木一样去实现一项功能不同,你需要去静下心来死锁一款游戏的主题,同时需要去实现游戏中的每一个策略。

img

我觉得这样比拿来即用的搬运工作要有趣很多,且更加具有挑战。

以我们熟知的贪吃蛇为例,当然我们目前对于这款游戏的主题和玩法已经非常清楚了,通过方向键控制蛇的移动,每当吃到一颗食物蛇就会变长,如果撞到墙则游戏结束…

img

那么,对这款游戏进行拆解,就需要思考几个问题:

  • 如何使蛇加速和减速?
  • 如何使蛇绕过边缘?
  • 如何分配新产生食物的位置?
  • 游戏中的蛇如何根据键盘操作做出相应的反应?

看到这里你就会发现,它并不像我们大多数情况下使用Python那样,np.linespace、plt.plot、tf.Session,它更像是LeetCode上面的算法题,需要你从零开始去实现一款游戏,用心去思考游戏实现过程中的每个细节。而在这个过程中对人的提升会非常迅速。

详细的内容可以看我另外一篇文章的介绍:

50行Python代码实现经典游戏,不仅是划水神器,更是学习利器!186 赞同 · 5 评论文章img

2. CDDA-Game-Launcher

Star:401

img

这是游戏《大灾变:黑暗之日》的开源实现,并在原来的基础上增添了很多新特性。

这款开源项目已经实现了很多游戏模块,例如启动游戏、检测游戏版本号、模组管理、保存和自动备份等等。

3. fofix

Star:375

img

这是 Frets on Fire X,一款高度可定制的节奏游戏,支持最多四名玩家的吉他、贝斯、鼓和人声游戏的多种模式。 它是 Unreal Voodoo 对原始 Frets on Fire 进行的一系列修改的延续。

4. Lutris

Star:6k

img

严格来说,Lutris并不是一款单纯的游戏,它是一个开源的视频游戏平台,通过它可以安装和玩来自不同年代的大多数游戏。

Lutris通过利用和组合现有的模拟器、引擎重新实现和兼容不同平台。

客户端可以连接 Humble Bundle、GOG 和 Steam 等现有服务,使游戏库易于访问。 游戏下载和安装是自动的,可以通过用户制作的脚本进行修改。

5. pychess

Star:556

img

用Python实现的一款国际象棋客户端,适用于 Linux/Windows系统。

6. PySolFC

Star:366

img

一个全面的、功能丰富的、开源的、可移植的纸牌游戏合集,适用于Windows、Linux、macOS。

7. term2048

Star:798

img

曾经风靡一时的2048小游戏,这是用Python实现的一款终端下可以玩的2048游戏。

8. Unknown-Horizons

Star:1.3k

img

开源即时策略游戏《Unknown Horizons》(美丽新世界) 官方开源的代码,基于Python开发。

建议大家有空可以多浏览Github,有很多好用的开源免费工具。但是,目前Github上项目多如牛毛,而且刷榜现在也非常严重,想要找到优质的项目变得越来越难。这里,给大家推荐Github上一个非常不错的项目《DevWeekly》,这个项目每周都会精挑细选一些优质的开源项目,涵盖C++、JAVA、JavaScript、Python、Go等不同编程语言。此外,还有一些开源工具、优秀的技术文章,而且考虑到很多同学访问Github不方便的问题,我还特意同步到了Gitee,建议大家看一下:

https://gitee.com/sharetech_lee/DevWeekly

hello,大家好,我是Jackpop,重点大学本科毕业后保送到哈工大计算数学专业读研,有多年国内头部互联网、IT公司工作经验,先后从事过计算机视觉、推荐系统、后端、数据等相关工作。如果同学们在升学考研、职业规划、高考志愿、简历优化、技术学习等方面有困惑,欢迎大家前来咨询!


http://chatgpt.dhexx.cn/article/BD2SuhRB.shtml

相关文章

如何使用python游戏开发模块—pygame?

Pygame是一组旨在编写视频游戏的Python模块。Pygame可以使用python语言创建功能齐全的游戏和多媒体程序。Pygame具有高度的可移植性,几乎可以在所有平台和操作系统上运行。Pygame至今已被下载了数百万次。Pygame非常流行的一个原因是免费。下面,小编就教…

Python游戏开发,Python实现开心消消乐小游戏 附带源码

开发工具 Python版本: 3.6.4 相关模块: pygame模块; 以及一些Python自带的模块。 环境搭建 安装Python并添加到环境变量,pip安装需要的相关模块即可。 效果展示 原理简介 游戏规则: 玩家通过鼠标交换相邻的拼…

Python游戏开发--外星人入侵(源代码)

文章目录 1.效果展示2. 《外星人入侵》源代码2.1 image2.2 alien_invasion.py2.3 alien.py2.4 bullet.py2.5 button.py2.6 game_stats.py2.7 scoreboarf.py2.8 settings.py2.9 ship.py 最近学习的python第一个项目实战,《外星人入侵》,成功实现所有功能&…

小学生python游戏开发pygame--初始及基础知识

#1024程序员节|用代码,改变世界# 小学生python游戏开发pygame1--基础知识 前言知识点1、python知识点1.1 RGB 颜色表示1.2 类2.3 pygame.display.update()2.4 加载图片2.5 鼠标 键盘2.6 颜色2.7 中文字体2.8 音效 总结源码获取 前言 Pygame是被设计用来…

Python游戏开发工程师的起步,几款游戏开发案例

Pylash项目地址 创建项目 这样的话我们的项目就创建好了,然后只用往Main.py里填写代码运行即可。 编写Hello World小程序 编写游戏 有以上对pylash的小小了解,我们接下来可以开始编写游戏了。首先我们把第四行以后所有代码删除。 引入所需 全局变量 …

适合python游戏开发的库你知道几个?

python游戏开发的库 01 PyGame 官网: https://www.pygame.org/docs/ 概述: Pygame 是一组专为编写视频游戏而设计的 Python 模块。 它在优秀的 SDL 库之上添加了功能。这允许您使用 python 语言创建功能齐全的游戏和多媒体程序。Pygame具有高度的可…

Python游戏开发实战教程

Python游戏开发实战教程 学习 Python 中的高级游戏编程 此视频教程共27.0小时,中英双语字幕,画质清晰无水印,源码附件全 课程英文名:Learn 10 Games using Python - 2021 下载地址 百度网盘地址:https://pan.baidu.…

Python游戏开发,pgzrun模块,Python实现阿肯色克隆人游戏

前言 利用Python实现Python和PyGameZero编写阿卡尼类(Outout)的克隆,废话不多说。 让我们愉快地开始吧~ 开发工具 **Python版本:**3.6.4 相关模块: pgzrun模块; 以及一些Python自带的模块。 环境搭建 安装Python并添加到…

python游戏开发必有套路

游戏开发很简单,只需几个步骤 重点: 控制和显示窗口: pygame.display.方法 必有步骤1:创建游戏窗口 初始化游戏窗口 pygame.init() 设置游戏窗口 必用到pygame里的display模块,记住只要是控制和显示窗口和屏幕,都会调用display模块…

Python开发系列课程(12) - 图形用户界面和游戏开发

图形用户界面和游戏开发 基于tkinter模块的GUI GUI是图形用户界面的缩写,图形化的用户界面对使用过计算机的人来说应该都不陌生,在此也无需进行赘述。Python默认的GUI开发模块是tkinter(在Python 3以前的版本中名为Tkinter)&…

【python游戏开发】:那些由python开发的知名网站和游戏你知道多少

前言 众所周知,Python不仅在数据分析和人工智能方面有着广泛的应用,而且在网站开发和游戏开发方面也是独一无二的。今天,大美将带你去看看哪些知名的大公司和网站是用Python开发的,还有一些用Python开发的超级游戏。列出一些著名…

python游戏开发的五个案例分享

本文给大家分享了作者整理的五个python游戏开发的案例,通过具体设计思路,代码等方面详细了解python游戏开发的过程,非常的详细,希望大家能够喜欢 一、序列应用——猜单词游戏 1. 游戏介绍 猜单词游戏就是计筧机随机产生一个单词,打乱字母顺序,供玩家去…

pgzero:用 Python 进行游戏开发

1. pgzero python在各个领域都有着丰富的第三方库,pygame是python在游戏领域的应用库,可以用来开发各种不同的游戏。但是对于初学者来说,还是存在一定的门槛。 而今天要和大家分享的pgzero(pygame zero)是在pygame基础…

Python3爬虫、数据清洗与可视化实战之写一个简单的爬虫

文章目录 关于爬虫的合法性了解网页认识网页结构写一个简单的HTML 使用requests库请求网站安装requests库爬虫的基本原理使用GET方式抓取数据使用POST方式抓取数据 使用Beautiful Soup解析网页清洗和组织数据爬虫攻防战 关于爬虫的合法性 几乎每一个网站都有一个名为robots.tx…

Python3.X 爬虫实战(并发爬取)

【工匠若水 http://blog.csdn.net/yanbober 未经允许严禁转载,请尊重作者劳动成果。私信联系我】 1 背景 在这一系列开始前我们就说过,简单的爬虫很容易,但是要完成一个高效健壮的爬虫不是一个简单的事情,这一系列我们已经明白了爬…

Python爬虫(三)

Python爬虫(三) 一、ajax请求豆瓣电影第一页 # get请求 # 获取豆瓣电影的第一页数据并保存 import urllib.request url https://movie.douban.com/j/chart/top_list?type5&interval_id100%3A90&action&start0&limit20 headers {use…

Python3爬虫(一)抓取网页的html

因为代码只有几行,所以可以先贴代码: import urllib.request url rhttp://douban.com res urllib.request.urlopen(url) html res.read().decode(utf-8) print(html) 第一行,导入 urllib库的request模块 第二行,指定要抓取的网…

python3爬虫-Python3网络爬虫入门实战解析

网络爬虫简介 网络爬虫,也叫网络蜘蛛(Web?Spider)。它根据网页地址(URL)爬取网页内容,而网页地址(URL)就是我们在浏览器中输入的网站链接。 在浏览器的地址栏输入URL地址,在网页处右键单击,找到检查。(不同浏览器的叫法不同&am…

Python3爬虫概述

爬虫基础 文章目录 爬虫基础爬虫概述Session和Cookie简述1. Session2. Cookie3.关于Session 参考资料 爬虫概述 简单来说,爬虫就是从网页上提取信息并保存的自动化程序。 爬虫程序的工作: 获取网页: 爬虫需要先获取网页信息,即网页源代码进行后续分析。…

python爬虫之

使用BeaufulSoup获取指定class时,结果是将我们所输入的字符串去做模糊匹配,因此会将所有包含的class结果输出,如下图: 但我们所需要的可能是精确匹配的那一条,这个时候更换一下代码即可: web_url http://…