Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。这门强大的语言如今在大学和Google、IBM等大型技术公司广泛使用。
本书是一本父母和老师教孩子使用Python进行基础程序设计和解决问题的入门图书。 本书通过科学合理的结构、通俗易懂的文字、活泼有趣的图示,帮助孩子学习计算机的思维方式,而可视化和游戏为主的例子则持续吸引读者的注意力。针对变量、循环、函数等编程基础概念的介绍,可以帮助年轻的程序员构建所需的技能,以制作自己的超酷的游戏和应用。每章末尾的编程挑战,则可以拓展读者的思维,巩固所学习的知识和技能。
本书适合任何想要通过Python学习编程的读者,尤其适合父母、老师、学生,以及想要理解计算机编程基础知识的未成年人阅读学习。
本书属于No Starch的经典系列之一,英文版在美国受到读者欢迎。
本书全彩印刷,寓教于乐,易于学习;读者可以轻松与快递地掌握解决问题方法和程序设计思维的。
“编程从孩子抓起”得到越来越多的人的认同和重视。本书是父母教孩子学习Python程序设计的亲子读物。
Bryson Payne是北乔治亚大学的计算机科学系教授。他在大学教授计算机科学超过15年,在此之前,他教授中学数学和编程。他持续与K-12教育工作者进行广泛合作,使用3D打印机、机器人、遥控飞机和移动应用编程等技术,并且让学生参与编程。
第1 章 Python 基础:认识环境 1
11 认识Python 3
12 用Python 编写程序 5
13 运行Python 程序 5
14 本章小结 6
15 编程挑战 7
第2 章 海龟作图:用Python 绘图 9
21 第一个海龟程序 10
211 程序是如何工作的 10
212 发生了什么 12
22 旋转的海龟 13
23 海龟画圆 14
24 添加颜色 15
241 一个四色螺旋线 16
242 修改背景颜色 19
25 一个变量搞定一切 20
26 本章小结 22
27 编程挑战 22
第3 章 数字和变量:用Python 做数学运算 24
31 变量:保存内容的地方 25
32 Python 中的数字和数学运算 26
321 Python 数字 27
322 Python 操作符 28
323 在Python shell 中进行数学运算 28
324 语法错误:你说什么? 29
325 Python shell 中的变量 30
326 用操作符编程:披萨计算器 31
33 字符串:Python 中真正的字符 33
34 用字符串改进彩色螺旋线 35
35 列表:将所有内容放到一起 36
36 Python 做作业 38
37 本章小结 40
38 编程挑战 41
第4 章 循环很有趣(你可以再说一遍) 42
41 构建自己的循环 43
411 使用for 循环生成4 个圆组成的玫瑰花瓣 44
412 修改循环让玫瑰花瓣带有6 个圆 46
42 把玫瑰花瓣程序改进为允许用户输入 48
43 游戏循环和while 循环 50
44 家庭成员螺旋线 52
45 整合:病毒式的螺旋线 55
46 本章小结 59
47 编程挑战 60
第5 章 条件(如果是这样该怎么办?)62
51 if 语句 63
52 认识布尔值 65
521 比较操作符 66
522 你还不够大! 68
53 else 语句 69
531 多边形或玫瑰花瓣 70
532 偶数还是奇数 71
54 elif 语句 74
55 复杂条件:if、and、or 和not 75
56 秘密消息 77
561 打乱字符串 78
562 字符的值 79
563 加密/ 解密程序 80
57 本章小结 82
58 编程挑战 83
第6 章 随机的乐趣和游戏(继续前进,抓住机会!) 85
61 猜数字游戏 86
62 彩色的随机螺旋线 88
621 选取颜色,任意的颜色 89
622 获取坐标 90
623 画布有多大 92
624 整合 93
63 Rock-Paper-Scissors 95
64 选一张牌,任意一张牌 97
641 堆牌 97
642 发牌 98
643 计算牌面 99
644 继续前进 101
645 整合 102
65 掷骰子 103
651 设置游戏 104
652 对骰子排序 104
653 测试骰子 105
654 整合 106
66 万花筒 109
67 本章小结 112
68 编程挑战 114
第7 章 函数(那些东西有了一个名字) 116
71 用函数整合内容 117
711 定义random_spiral() 118
712 调用random_spiral() 119
72 参数:传给函数 120
721 在随机位置微笑 121
722 整合 125
73 返回:发回统计结果 127
731 从函数返回一个值 127
732 在程序中使用返回值 128
74 交互简介 130
741 处理事件:TurtleDraw 130
742 监听键盘事件: ArrowDraw 133
743 用参数处理事件:ClickSpiral 135
744 更进一步:ClickandSmile 137
75 ClickKaleidoscope 139
751 draw_kaleido() 函数 139
752 draw_spiral() 函数 140
753 整合 140
76 本章小结 142
77 编程挑战 143
第8 章 定时器和动画 144
81 获取Pygame 的所有GUI 145
811 用Pygame 画一个点 146
812 Pygame 中的新内容 148
813 游戏的部分 149
82 时间刚刚好:移动和弹跳 152
821 移动笑脸 153
822 用Clock 类实现笑脸动画 155
823 将笑脸从墙上弹开 157
824 在四面墙上弹回笑脸 162
83 本章小结 166
84 编程挑战 167
第9 章 用户交互:进入游戏 170
91 增加交互:点击和拖动 171
911 点击点 171
912 拖动绘制 173
92 高级交互:笑脸爆炸 177
921 笑脸精灵 178
922 设置精灵 180
923 更新精灵 182
924 较大的和较小的笑脸 182
925 整合 183
93 SmileyPop 10 版 185
931 检测碰撞和删除精灵 185
932 整合 186
94 本章小结 188
95 编程挑战 189
第10 章 游戏编程 191
101 构建游戏框架:Smiley Pong 10 版 192
1011 绘制游戏板和游戏部件 193
1012 记录分数 194
1013 显示得分 199
1014 整合 201
102 增加难度并结束游戏:Smiley Pong 20 版 202
1021 游戏结束 203
1022 再玩一次 203
1023 更快 204
1024 整合 206
103 添加更多的功能:SmileyPop 20 版 208
1031 使用Pygame 添加声音 208
1032 跟踪和记录玩家进度 210
1033 整合 213
104 本章小结 215
105 编程挑战 216
附录A Windows、Mac 和Linux 下的Python 安装 218
A1 Windows 下安装Python 219
A11 下载安装程序 219
A12 运行安装程序 220
A13 尝试Python 223
A2 Mac 下的Python 225
A21 下载安装程序 225
A22 运行安装程序 226
A23 尝试Python 229
A3 Linux 下的Python 安装 230
附录B Windows、Mac 和Linux 下的Pygame 安装233
B1 在Windows 下安装Pygame 234
B2 Mac 下的Pygame 238
B21 Python 27 和Pygame 192 238
B3 Linux 下的Pygame 240
B31 Pygame for Python 2 241
附录C 构建自己的模块242
C1 构建colorspiral 模块 243
C11 使用colorspiral 模块 244
C12 重用colorspiral 模块 245
C2 附加资料 246
术语表247