登入帳戶  | 訂單查詢  | 購物車/收銀台(0) | 在線留言板  | 付款方式  | 聯絡我們  | 運費計算  | 幫助中心 |  加入書簽
會員登入 新註冊 | 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類閱讀雜誌 香港/國際用戶
最新/最熱/最齊全的簡體書網 品種:超過100萬種書,正品正价,放心網購,悭钱省心 送貨:速遞 / EMS,時效:出貨後2-3日

2024年10月出版新書

2024年09月出版新書

2024年08月出版新書

2024年07月出版新書

2024年06月出版新書

2024年05月出版新書

2024年04月出版新書

2024年03月出版新書

2024年02月出版新書

2024年01月出版新書

2023年12月出版新書

2023年11月出版新書

2023年10月出版新書

2023年09月出版新書

『簡體書』趣学Python游戏编程(第2版)

書城自編碼: 3985715
分類: 簡體書→大陸圖書→計算機/網絡程序設計
作者: 何青
國際書號(ISBN): 9787302657309
出版社: 清华大学出版社
出版日期: 2024-03-01

頁數/字數: /
書度/開本: 16开 釘裝: 平装

售價:NT$ 359

我要買

share:

** 我創建的書架 **
未登入.



新書推薦:
第十三位陪审员
《 第十三位陪审员 》

售價:NT$ 245.0
微观经济学(第三版)【2024诺贝尔经济学奖获奖者作品】
《 微观经济学(第三版)【2024诺贝尔经济学奖获奖者作品】 》

售價:NT$ 709.0
Python贝叶斯深度学习
《 Python贝叶斯深度学习 》

售價:NT$ 407.0
启微·狂骉年代:西洋赛马在中国
《 启微·狂骉年代:西洋赛马在中国 》

售價:NT$ 357.0
有趣的中国古建筑
《 有趣的中国古建筑 》

售價:NT$ 305.0
十一年夏至
《 十一年夏至 》

售價:NT$ 347.0
如何打造成功的商业赛事
《 如何打造成功的商业赛事 》

售價:NT$ 408.0
万千教育学前·透视学前儿童的发展:解析幼儿教师常问的那些问题
《 万千教育学前·透视学前儿童的发展:解析幼儿教师常问的那些问题 》

售價:NT$ 265.0

建議一齊購買:

+

NT$ 485
《 Go语言从入门到精通 》
+

NT$ 834
《 深入浅出Go语言核心编程 》
+

NT$ 778
《 你好!Java 关东升 》
+

NT$ 363
《 线性代数与Python解法 》
+

NT$ 579
《 PHP从入门到精通(第6版) 》
+

NT$ 559
《 你好!Python 关东升 》
編輯推薦:
? 高校教师多年开发经验的结晶之作,深入浅出讲解使用Python语言进行游戏开发的方法。
? 精选11个经典游戏案例,涉及不同的游戏类型,由浅入深剖析Python语言开发过程中遇到的问题,帮助读者快速掌握游戏程序设计的基本原理和方法,同时提高Python语言的编程能力。
內容簡介:
本书是笔者多年从事高校教学经验的结晶之作。全书深入浅出地讲解了使用Python语言进行游戏开发以及帮助读者快速掌握游戏设计的基本原理和方法,同时提高应用Python语言编程的能力。
全书精选11个游戏案例,涵盖不同的游戏类型,每章围绕一个经典游戏案例展开,并突出一个游戏编程的主题。本书涉及的主要知识点包括游戏循环的原理、鼠标及键盘事件的处理、碰撞检测及处理、随机数的运用、定时器的使用、游戏场景的滚动、角色动画的播放、音效及音乐的播放、缓动效果、游戏关卡设计、游戏人工智能的原理及运用等。本书将Python语法知识及常用的编程技巧糅合在各个游戏案例中进行介绍,为读者展示Python语言的实际运用场景。
本书内容安排合理,架构清晰,注重理论与实践相结合,适合作为Python开发零基础读者的教程,也可作为高等院校的辅导教材,还可供职业技术学校和各类游戏培训机构使用。
目錄
第1章 神奇的游戏循环:弹跳小球 1
1.1 准备工作 1
1.1.1 选择合适的开发工具 1
1.1.2 设置开发环境 2
1.2 从何处开始 3
1.2.1 创建程序窗口 3
1.2.2 改变窗口大小和颜色 5
1.2.3 显示图像 7
1.3 建立游戏世界 9
1.3.1 创建游戏场景 9
1.3.2 创建游戏角色 10
1.4 移动小球 11
1.4.1 改变小球坐标 11
1.4.2 游戏循环 11
1.4.3 朝其他方向移动 13
1.4.4 移动得快一些 14
1.5 实现小球反弹 14
1.5.1 检测小球的位置 15
1.5.2 将小球反弹回来 15
1.6 加入更多的小球 18
1.6.1 添加两个小球 18
1.6.2 使用列表 19
1.7 回顾与总结 21
第2章 用鼠标控制游戏:拼图 24
2.1 添加图片块 24
2.1.1 准备图片资源 24
2.1.2 创建游戏场景 25
2.1.3 用列表管理图片块 26
2.2 打乱图片块 27
2.2.1 使用随机函数 27
2.2.2 将图片块显示出来 28
2.3 移动图片块 30
2.3.1 处理鼠标单击事件 30
2.3.2 选取图片块 31
2.3.3 判断图片块能否移动 31
2.3.4 采用模块化编程方法 32
2.3.5 改变图片块的位置 33
2.3.6 减少程序的缩进层级 33
2.4 实现游戏结束 34
2.4.1 检查拼图是否完成 35
2.4.2 显示最后一个图片块 36
2.4.3 播放声音效果 37
2.4.4 显示文字信息 38
2.5 回顾与总结 39
第3章 递归函数的威力:扫雷 42
3.1 创建方块阵列 42
3.1.1 准备图片资源 42
3.1.2 创建游戏场景 43
3.1.3 生成方块阵列 43
3.1.4 埋设地雷 45
3.2 给方块插上旗子 46
3.2.1 使用鼠标右键来操作 46
3.2.2 定义函数执行插旗操作 47
3.3 打开方块 49
3.3.1 完善鼠标事件处理 49
3.3.2 获取周围的方块 50
3.3.3 统计地雷数量 52
3.3.4 递归调用打开方块函数 52
3.4 判定游戏胜负 54
3.4.1 游戏失败的处理 54
3.4.2 游戏胜利的处理 55
3.5 回顾与总结 57
第4章 用键盘控制游戏:贪食蛇 60
4.1 创建场景和角色 60
4.1.1 创建游戏场景 60
4.1.2 创建贪食蛇 61
4.2 移动蛇头 62
4.2.1 处理键盘按键事件 62
4.2.2 让蛇头持续移动 63
4.2.3 另一种键盘控制方式 64
4.2.4 延缓贪食蛇的移动 65
4.2.5 旋转蛇头图像 66
4.2.6 使用字典类型 68
4.3 添加食物 69
4.3.1 让食物随机出现 69
4.3.2 让贪食蛇“吃”食物 70
4.3.3 增长贪食蛇的身体 71
4.4 实现游戏结束 74
4.4.1 判断贪食蛇碰到窗口边界 74
4.4.2 判断蛇头碰到自己身体 74
4.5 回顾与总结 76
第5章 随机数的妙用:打字 79
5.1 创建一个字母气球 79
5.1.1 创建游戏场景 79
5.1.2 创建气球角色 80
5.2 添加多个气球 81
5.2.1 创建多个气球角色 81
5.2.2 随机生成气球的坐标 83
5.2.3 随机生成气球的速度 84
5.2.4 随机生成气球的字母 86
5.3 实现打字功能 88
5.3.1 匹配字母的按键 89
5.3.2 消除气球 89
5.3.3 修补游戏的Bug 92
5.4 完善游戏规则 94
5.4.1 添加游戏积分 94
5.4.2 实现游戏倒计时 95
5.4.3 判定游戏结束 97
5.5 回顾与总结 98
第6章 碰撞检测及处理:打砖块 103
6.1 创建场景及角色 103
6.1.1 创建游戏场景 103
6.1.2 创建游戏角色 104
6.2 让角色动起来 106
6.2.1 移动挡板 106
6.2.2 移动小球 107
6.3 处理角色间的碰撞 110
6.3.1 碰撞检测的原理 110
6.3.2 小球与挡板的碰撞 112
6.3.3 小球与砖块的碰撞 114
6.4 完善游戏规则 116
6.4.1 设置游戏积分 117
6.4.2 添加生命值 117
6.4.3 实现游戏结束 118
6.5 回顾与总结 120
第7章 让游戏更加生动:Flappy
Bird 124
7.1 创建游戏场景 124
7.1.1 设置背景图像 124
7.1.2 滚动背景图像 126
7.2 添加障碍物 128
7.2.1 设置地面 128
7.2.2 设置水管 129
7.3 添加小鸟 131
7.3.1 创建小鸟角色 131
7.3.2 模拟重力下的飞行 132
7.3.3 播放飞行动画 134
7.4 小鸟与障碍物的交互 135
7.4.1 小鸟与地面碰撞 135
7.4.2 小鸟与水管碰撞 136
7.4.3 小鸟飞越水管 137
7.5 设计图形用户界面 139
7.5.1 显示GUI图像 139
7.5.2 单击“开始”按钮 141
7.5.3 播放背景音乐 141
7.6 回顾与总结 142
第8章 实现复杂的移动:
飞机大战 146
8.1 创建游戏场景 146
8.1.1 设置背景图像 146
8.1.2 滚动背景图像 148
8.2 添加英雄战机 148
8.2.1 控制战机移动 148
8.2.2 播放战机动画 149
8.3 添加子弹 151
8.3.1 实现子弹射击 151
8.3.2 设置增强道具 152
8.3.3 使用三角函数计算坐标 154
8.4 添加敌机 157
8.4.1 设置缓动效果 157
8.4.2 敌机与子弹的交互 160
8.4.3 敌机与战机的交互 161
8.5 完善游戏效果 165
8.5.1 设置HUD 165
8.5.2 播放背景音乐 166
8.6 回顾与总结 167
第9章 添加多个游戏关卡:
推箱子 173
9.1 创建场景和角色 173
9.1.1 设置游戏关卡 173
9.1.2 加载游戏关卡 175
9.2 实现角色的交互 177
9.2.1 控制玩家角色的移动 177
9.2.2 处理玩家角色的碰撞 178
9.2.3 处理箱子角色的碰撞 180
9.3 添加新的关卡 181
9.3.1 从文件载入关卡 181
9.3.2 切换关卡 184
9.4 完善游戏功能 186
9.4.1 重置关卡 186
9.4.2 判定游戏结束 187
9.5 回顾与总结 188
第10章 人工智能的奥秘:
五子棋 193
10.1 创建棋盘和棋子 193
10.1.1 绘制棋盘 193
10.1.2 设置棋子 195
10.2 执行走棋操作 195
10.2.1 使用鼠标下棋 195
10.2.2 交换下棋双方 197
10.3 完善游戏规则 199
10.3.1 判定棋局胜负 199
10.3.2 添加悔棋功能 202
10.4 实现人机对弈 203
10.4.1 游戏中的人工智能 203
10.4.2 让计算机学会下棋 204
10.5 回顾与总结 209

第11章 双人游戏的乐趣:
炸弹人 215
11.1 创建游戏场景 215
11.1.1 定义自己的类 215
11.1.2 绘制场景 216
11.2 创建玩家角色 217
11.2.1 定义玩家类 217
11.2.2 实现角色移动 219
11.3 添加炸弹 221
11.3.1 定义炸弹类和火焰类 221
11.3.2 让玩家放置炸弹 222
11.4 设置道具功能 224
11.4.1 定义道具类 224
11.4.2 随机生成道具 226
11.5 加入另一个玩家 228
11.6 回顾与总结 230
附录A 配置开发环境 236
A.1 安装Python 236
A.1.1 下载Python安装包 236
A.1.2 安装程序 237
A.2 安装Mu编辑器 238
A.2.1 下载Mu编辑器的安装包 238
A.2.2 安装程序 239
附录B Python基础语法参考 241
B.1 程序基本元素 241
B.1.1 常量与变量 241
B.1.2 语句 241
B.1.3 缩进 242
B.1.4 注释 242
B.2 简单数据类型 243
B.2.1 数值型 243
B.2.2 布尔型 243
B.2.3 字符串 243
B.3 运算符与表达式 244
B.3.1 算术运算符 244
B.3.2 赋值运算符 244
B.3.3 关系运算符 245
B.3.4 逻辑运算符 245
B.4 程序流程控制 245
B.4.1 顺序语句 245
B.4.2 条件语句 246
B.4.3 循环语句 247
B.5 函数 248
B.5.1 函数的定义与使用 248
B.5.2 参数与返回值 249
B.5.3 导入模块 250
B.6 类和对象 251
B.6.1 类的定义 251
B.6.2 创建对象 252
B.6.3 构造方法 253
B.7 组合数据类型 253
B.7.1 列表 254
B.7.2 元组 256
B.7.3 字典 257
B.7.4 集合 258
內容試閱
一方面,随着人工智能时代的来临,Python编程语言受到热捧,根据IEEE发布的《2023年最热门的编程语言》,Python在整体排名中已经连续8年位居榜首。相伴而生的是对Python学习需求的持续增长,国内高校纷纷开设Python程序设计课程,而且从2018年3月起,Python被纳入全国计算机等级考试科目。中小学也顺应时代的潮流,相继开始进行Python编程教学。2018年初,浙江省出台了最新的信息技术课程改革方案,确定将Python纳入浙江省信息技术高考。北京市和山东省也把Python编程基础纳入信息技术课程和高考的内容体系。
另一方面,随着近年来游戏产业的急剧升温,游戏人才的缺口急剧增大,同时也催生了游戏设计的学习需求,越来越多的人开始学习游戏设计和编程,众多高校先后开设了与游戏设计相关的专业及课程。然而,游戏程序设计的门槛相对来说比较高,没有太多适合的学习工具让新手入门。关于游戏编程的书籍大多介绍的是专业级的开发工具(如Unity 3D、Cocos 2D等),针对初学者的书籍凤毛麟角。
本书尝试将以上两种需求结合起来,即通过Python语言来介绍游戏编程的基本原理和方法。一方面,可以为Python语言学习者提供一个实践的平台,通过游戏的设计和编写来深入理解Python语法,以此提高读者的实践应用能力,进而达到融会贯通的学习效果;另一方面,为游戏设计爱好者提供一个便捷的学习途径,利用Python的简洁性来介绍游戏设计,可以尽量排除语法层面的障碍,从而方便读者理解及掌握游戏编程的基本原理和实现方法。
主要内容
本书精选了11个游戏案例进行介绍,涵盖了不同的游戏类型。为了让读者能够“趣学”,本书挑选的都是经典而有趣的游戏案例,同时在写作风格上尽量做到轻松有趣,以便最大程度地提高读者的学习兴趣和学习效果。
书中的每个游戏案例都针对一个主题,内容围绕该主题展开。
第1章介绍弹跳小球游戏,主题为游戏循环的原理。通过设置游戏循环,实现了小球在游戏窗口四周的弹跳效果。
第2章介绍拼图游戏,主题为鼠标事件处理。通过对鼠标的单击事件进行处理,实现了图片块的移动操作。
第3章介绍扫雷游戏,主题为函数的递归调用。通过使用递归函数来打开方块,实现了方块的自动打开操作。
第4章介绍贪食蛇游戏,主题为键盘事件处理。通过对键盘的按键事件进行处理,实现了贪食蛇的移动控制。
第5章介绍打字游戏,主题为随机数的运用。通过为气球随机生成速度、位置及字母,展示了随机数在游戏设计中的奇妙作用。
第6章介绍打砖块游戏,主题为碰撞检测及处理。通过对小球、挡板及砖块实施碰撞检测,实现了游戏角色之间的交互行为。
第7章介绍Flappy Bird游戏,主题为场景滚动和角色动画。通过滚动显示场景图像,以及为小鸟播放飞行动画,实现了栩栩如生的游戏画面。
第8章介绍飞机大战游戏,主题为游戏角色的移动特效。通过为敌机设置缓动功能,实现了游戏角色复杂多变的移动效果。
第9章介绍推箱子游戏,主题为游戏关卡的设计与实现。通过为推箱子游戏添加多个关卡,实现了游戏关卡的设置、加载和切换。
第10章介绍五子棋游戏,主题为人工智能在游戏设计中的运用。通过为五子棋游戏加入人工智能算法,实现了人机对弈的功能。
第11章介绍炸弹人游戏,主题为双人游戏制作。通过在炸弹人游戏中加入两名玩家分别操控的角色,实现双人共同游戏的效果。
本书特色
与时俱进。紧跟计算机技术及产业发展趋势,结合游戏开发、Python语言、人工智能等热点内容,充分满足大众对时兴技术的好奇心和求知欲。
结构清晰。每章围绕一个经典游戏案例展开,并将案例拆分为几个小任务,然后分任务、分步骤地进行介绍,展示游戏从无到有的全过程。
组织合理。内容按照由易到难的顺序来组织,各章涉及的知识点前后关联,每章都会介绍一些新技能,并在后面的章节中加以运用。
注重实践。将Python语法知识及常用的编程技巧糅合到各个游戏案例中,以展示Python语言的实际运用场景,从而达到学以致用的效果。
通俗易懂。采用生动有趣的语言以及细致入微的描述,并辅以丰富翔实的图例,充分顾及初学者的阅读习惯。
学习建议
由于本书各章节的知识点在逻辑上前后关联,因此建议从第1章开始,逐章节进行学习。若对某个章节的案例特别感兴趣,也可以先学习该案例,当遇到不懂之处再去前面的章节中寻找答案。若读者之前不熟悉Python语言,则可以先看附录中关于Python基础语法的介绍。
在学习本书的过程中,建议读者跟随着书中内容将代码亲手录入一遍。对于每个游戏案例的各个小任务,可以先试着自己动手实现,若遇到问题可再参考书中的解决办法。对于书中给出的练习,也希望读者能够认真地加以思考和解决。“纸上得来终觉浅,绝知此事要躬行”,若想真正提高编程能力,除了多动手实践没有其他捷径。
适用读者
本书受众面很广,不仅适用于高等院校的学生,也适合社会大众及各类游戏开发培训机构,满足其学习游戏设计、提高Python编程水平的需求。
若您对以下几个问题之一持肯定的答案,那么本书便适合您阅读。
您对计算机程序设计感兴趣吗?
您希望学习Python编程语言吗?
若您有一定的Python基础,希望进一步提高编程能力吗?
您想了解经典的小游戏是如何设计和编写的吗?
您希望通过学习游戏编程技术来制作自己的游戏吗?
技术支持
欲获取素材、源码及更多学习资源或答疑解惑,请扫描二维码。
本书配套课件,请扫描二维码。
由于作者水平有限,书中难免存在一些疏漏,敬请广大读者批评指正。
感谢家人、朋友及同事在本书的写作过程中给予的支持和关心,特别要感谢我可爱的女儿,作为最早接触书中游戏案例的人,她在乐此不疲地玩这些游戏的同时,也替我完成了大部分的测试工作。
作 者
于白马湖畔

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 海外用户
megBook.com.tw
Copyright (C) 2013 - 2024 (香港)大書城有限公司 All Rights Reserved.