新書推薦:
《
西班牙内战:秩序崩溃与激荡的世界格局:1936-1939
》
售價:NT$
990.0
《
非对称创新:中国企业赶超战略 魏江 刘洋
》
售價:NT$
495.0
《
潜能觉醒
》
售價:NT$
395.0
《
初平:汉末群雄混战(190—195)
》
售價:NT$
245.0
《
建安:官渡大决战(196—200)
》
售價:NT$
245.0
《
权力的图像——近代的中国海图与交流
》
售價:NT$
840.0
《
中亚民族史
》
售價:NT$
840.0
《
人工智能与智能制造:概念与方法 [美]马苏德·索鲁什 [美]理查德·D.布拉茨
》
售價:NT$
640.0
|
編輯推薦: |
用热门的Python语言来玩热门的《我的世界Minecraft》游戏 人生苦短,我用Python,学编程玩游戏两不误 学习编程从来都不是一件枯燥的事,边玩边学更简单 为了更好地玩游戏,这是个学习编程的好目标
|
內容簡介: |
Python是一种解释型、面向对象、动态数据类型的gao级程序设计语言,它具有丰富和强大的库,能够把用其他语言(尤其是C C)制作的各种模块很轻松地联结在一起。这两年随着人们对人工智能的关注越来越多,大家学习Python的热情也越来越高涨。Python在IEEE发布的2017年编程语言排行榜中高居shou位。 本书介绍了Python编程的基础知识,并以游戏《Minecraft(我的世界)》为载体,通过Python编程来与游戏中的玩家或方块互动,先后实现了剑球游戏、五子棋游戏以及像素图像扫描仪这几个项目,*后还实现了通过游戏控制Arduino等外部设备的功能。希望大家能够在游戏的过程中轻松地进入Python的世界,最终跨越软硬件的鸿沟,初步尝试自动化控制。 本书提供边玩游戏边学编程的全新体验,适合对Python编程感兴趣的读者阅读。游戏不再只是用来玩的,你将同时体验超级玩家、设计师和程序员的角色。
|
關於作者: |
程晨:创客布道师、创客教育践行者,拥有十多年嵌入式开发经验,技术方面涉猎广泛,先后主持参与十多项军民科研产品的研发,拥有多项发明专利。少年创学院联合创始人兼院长、泺喜教育联合创始人兼技术总监,兼任Intel软件创新大使、中国电子学会全国青少年机器人技术等级考试标准工作组副组长、中国教育技术协会数字教育资源专业委员会专家的职务。D一本Arduino中文书作者,编著、翻译开源硬件、3D打印、机器人、智能硬件、物联网等领域相关图书十多本,长期在《无线电》杂志刊登技术类文章。参与录制《原来如此》节目,录制多套开源硬件项目视频教程。曾任北京航空航天大学、北京邮电大学特聘讲师,参与清华大学、北京科技大学等多所高校的创新性课程设计。
|
目錄:
|
1Python 基础1
1.1 Python 的历史 1
1.2 Python 的发展 1
1.3 Python 的优缺点 2
1.3.1 Python 的优点 2
1.3.2 Python 的缺点 2
1.4 Python 的适用领域 3
1.5 Python 的安装与使用 3
1.5.1 Python 的安装 3
1.5.2 Python 的使用 5
1.5.3 编辑器 7
1.6 关键字 9
1.7 数字 10
1.8 变量 10
1.9 程序的基本结构 11
1.9.1 for 循环 12
1.9.2 if 选择结构 13
1.9.3 比较 14
1.9.4 逻辑运算 14
1.10 掷骰子 16
1.10.1 随机数 16
1.10.2 重复掷骰子 16
1.10.3 掷两个骰子 17
1.10.4 大小判断 18
1.11 While 20
2 字符串、列表和字典 22
2.1 字符串 22
2.1.1 字符串的定义 22
2.1.2 字符串的方法 22
2.2 列表 24
2.2.1 列表的定义 24
2.2.2 列表的方法 25
2.3 函数 26
2.4 猜词游戏 27
2.4.1 游戏规则 27
2.4.2 创建单词库 27
2.4.3 游戏结构 28
2.4.4 完善函数 29
2.5 字典 34
2.6 元祖 35
2.6.1 元祖的定义 35
2.6.2 多重赋值 35
2.6.3 多返回值 36
2.7 异常 36
2.8 函数汇总 37
2.8.1 数字 37
2.8.2 字符串 38
2.8.3 列表 39
2.8.4 字典 40
2.8.5 类型转换 40
3 类库和方法 42
3.1 库 42
3.1.1 使用random 库 42
3.1.2 使用Python 标准库 43
3.2 面向对象 44
3.3 定义类 44
3.4 继承 46
3.5 文件 48
3.5.1 读取文件 48
3.5.2 读取大文件 50
3.5.3 写入文件 51
3.5.4 文件系统操作 51
3.6 侵蚀化 52
3.7 网络 52
4 《Minecraft 我的世界》 54
4.1 《Minecraft》是什么 54
4.2 准备工作 55
4.3 欢迎来到《我的世界》 55
4.4 位置坐标 60
4.5 玩家的位置 60
4.5.1 获取玩家的位置 60
4.5.2 显示玩家的位置 61
4.5.3 设定玩家的位置 62
4.6 弹射区域 62
5 剑球游戏 64
5.1 建造球场 64
5.1.1 开辟空间 64
5.1.2 铺设球场 65
5.1.3 搭建球门 67
5.1.4 球场函数 67
5.2 击打事件处理 . 68
5.2.1 获取击打事件 68
5.2.2 确认方块的面 70
5.3 球的移动 71
5.3.1 击打方块不同的面 71
5.3.2 移动球的程序 73
5.4 异常情况 74
5.4.1 球多了 74
5.4.2 球没了 75
5.5 出界与进球 77
5.5.1 出界的判定 77
5.5.2 进球了 78
6 剑球进阶 .81
6.1 特殊规则 81
6.1.1 规则介绍 81
6.1.2 移动的中线 81
6.1.3 最大偏移量 83
6.2 显示数字 83
6.3 球门上的比分 86
6.3.1 东侧的比分 86
6.3.2 西侧的比分 94
6.4 CSV 文件 99
6.4.1 什么是CSV 文件 99
6.4.2 新建CSV 文件 100
6.4.3 读取外部文件 100
6.4.4 优化代码 102
6.5 彩蛋:TNT 来了 106
6.6 显示时间 108
6.6.1 获取系统时间 108
6.6.2 显示形式 109
6.6.3 功能实现 109
7 五子棋 115
7.1 绘制棋盘 115
7.1.1 二维数组 115
7.1.2 代码实现 116
7.2 落子 117
7.2.1 获取击打事件 118
7.2.2 改变方块颜色 118
7.2.3 更改数组 118
7.3 五子相连 118
7.3.1 落子效果 118
7.3.2 重复落子问题 119
7.3.3 获胜判断 121
7.4 重新开始 128
7.4.1 结束后的提示 128
7.4.2 刷新棋盘 129
7.4.3 反复刷新的问题130
8 图片扫描仪 131
8.1 像素画 131
8.2 项目介绍 132
8.3 操作菜单 133
8.3.1 获取输入信息 133
8.3.2 制作菜单 135
8.3.3 中文输入法 138
8.3.4 扫描仪菜单 138
8.4 扫描操作 142
8.5 复印操作 146
8.6 演示操作 148
8.6.1 原始内容制作 148
8.6.2 扫描 148
8.6.3 复印 152
8.7 完整的代码 154
9 硬件控制 160
9.1 Raspberry Pi 的硬件接口 160
9.1.1 连接GPIO 160
9.1.2 数字输出 161
9.1.3 模拟输出 163
9.2 串口通信 164
9.2.1 什么是Arduino164
9.2.2 在Raspberry Pi 上安装Arduino 165
9.2.3 Arduino 与Python 通信 165
9.3 比特开关 166
9.3.1 功能描述 166
9.3.2 准备工作 167
9.3.3 功能实现 167
附录 方块材质名称对照表 169
|
|