父与子的编程之旅:与小卡特一起学Python
版权声明
对本书第 1 版的赞誉
对本书第 2 版的赞誉
推荐序一
我们为什么要“与小卡特一起学 Python”?
推荐序二
第 1 版译者序
前言
什么是编程
Python——我们和计算机沟通的语言
为什么学编程
为什么选用 Python 语言
有趣的内容
关于本书
你需要什么
你不需要什么
怎样使用本书
验证例子
安装 Python
输入程序
做习题
卡特说
第 2 版新增内容
致作者
致家长和老师
第 1 版致谢
第 2 版致谢
第 1 章 出发吧
1.1 安装 Python
1.2 从 IDLE 启动 Python
1.3 来点指令吧
如果出问题
1.4 与 Python 交互
1.5 该编程了
1.6 运行你的第一个程序
1.7 如果出问题
语法错误
运行时错误
1.8 你的第二个程序
你学到了什么
测试题
动手试一试
第 2 章 记住内存和变量
2.1 输入、处理和输出
2.2 名字
2.3 名字里是什么
2.4 数字和字符串
长字符串
2.5 它们有多“可变”
2.6 全新的我
你学到了什么
测试题
动手试一试
第 3 章 基本数学运算
3.1 四大基本运算
3.2 操作符
3.3 运算顺序
3.4 另外两个操作符
指数——自乘为一个幂
取余——求余数
自增和自减
3.5 非常大和非常小
E 记法
指数与 E 记法
你学到了什么
测试题
动手试一试
第 4 章 数据的类型
4.1 改变类型
将整数转换为浮点数
将浮点数转换为整数
将字符串转换为浮点数
4.2 得到更多信息:type()
4.3 类型转换错误
4.4 使用类型转换
你学到了什么
动手试一试
第 5 章 输入
5.1 raw_input()
5.2 print 命令和逗号
打印 raw_input() 提示语的简便方法
5.3 输入数字
结合 int() 使用 raw_input()
5.4 来自互联网的输入
你学到了什么
测试题
动手试一试
第 6 章 GUI——图形用户界面
6.1 什么是 GUI
6.2 第一个 GUI
安装 EasyGui
Python 路径
建立 GUI
6.3 GUI 输入
6.4 选择你的口味
有多个按钮的对话框
选择框
文本输入
默认输入
数字呢
6.5 再看猜数游戏……
6.6 其他 GUI 组件
你学到了什么
测试题
动手试一试
第 7 章 判断再判断
7.1 测试,测试
7.2 缩进
7.3 是不是有问题
7.4 其他类型的测试
7.5 如果测试为假会怎么样
7.6 测试多个条件
7.7 使用 and
7.8 使用 or
7.9 使用 not
你学到了什么
测试题
动手试一试
第 8 章 转圈圈
8.1 计数循环
失控的循环
中括号做什么用
8.2 使用计数循环
8.3 一条捷径—— range()
8.4 风格问题——循环变量名
range() 简写
8.5 按步长计数
8.6 没有数字的计数
8.7 关于这个问题……
8.8 跳出循环————break 和 continue
提前跳转——continue
跳出——break
你学到了什么
测试题
动手试一试
第 9 章 全都为了你——注释
9.1 增加注释
9.2 单行注释
9.3 行末注释
9.4 多行注释
三重引号字符串
9.5 注释风格
本书中的注释
9.6 注释掉
你学到了什么
测试题
动手试一试
第 10 章 游戏时间到了
Skier
动手试一试
第 11 章 嵌套与可变循环
11.1 嵌套循环
11.2 可变循环
11.3 可变嵌套循环
11.4 更多可变嵌套循环
11.5 使用嵌套循环
计算卡路里
你学到了什么
测试题
动手试一试
第 12 章 收集起来——列表与字典
12.1 什么是列表
12.2 创建列表
12.3 向列表增加元素
12.4 这个点是什么
12.5 列表可以包含任何内容
12.6 从列表获取元素
为什么索引从 0 而不是 1 开始?
12.7 列表“分片”
分片简写
12.8 修改元素
12.9 向列表增加元素的其他方法
增加到列表末尾:append()
扩展列表:extend()
插入一个元素:insert()
append() 和 extend() 的区别
12.10 从列表删除元素
用 remove() 删除元素
用 del 删除
用 pop() 删除元素
12.11 搜索列表
in 关键字
查找索引
12.12 循环处理列表
12.13 列表排序
按逆序排序
另一种排序方法——sorted()
12.14 可改变和不可改变
元组——不可改变的列表
12.15 双重列表:数据表
从表获取一个值
12.16 字典
你学到了什么
测试题
动手试一试
第 13 章 函数
13.1 函数——积木
创建一个函数
13.2 调用函数
13.3 向函数传递参数
13.4 有多个参数的函数
多少才算太多
13.5 返回值的函数
返回一个值
13.6 变量作用域
局部变量
全局变量
13.7 强制为全局
13.8 关于变量命名的一点建议
你学到了什么
测试题
动手试一试
第 14 章 对象
14.1 真实世界中的对象
14.2 Python 中的对象
什么是属性
什么是方法
14.3 对象 = 属性 方法
14.4 这个点是什么
14.5 创建对象
创建一个对象实例
初始化对象
“魔法”方法 : str()
什么是 self
14.6 一个示例类—— HotDog
14.7 隐藏数据
14.8 多态和继承
多态——同一个方法,不同的行为
继承——向父母学习
14.9 未雨绸缪
你学到了什么
测试题
动手试一试
第 15 章 模块
15.1 什么是模块
15.2 为什么使用模块
15.3 积木桶
15.4 如何创建模块
15.5 如何使用模块
15.6 命名空间
什么是命名空间
导入命名空间
用 from 导入
太难了
15.7 标准模块
time
随机数
你学到了什么
测试题
动手试一试
第 16 章 图形
16.1 寻求帮助——Pygame
16.2 Pygame 窗口
16.3 在窗口中画图
什么是翻转
如何建立一个圆
Pygame 表面
Pygame 中的颜色
位置——屏幕坐标
形状大小
线宽
现代艺术
16.4 单个像素
连接多个点
再来连接多个点
逐点绘制
16.5 图像
16.6 动起来
16.7 动画
擦掉图像
底下有什么
16.8 更流畅的动画
让球一直移动
16.9 让球反弹
在 2D 空间中反弹
16.10 让球翻转
你学到了什么
测试题
动手试一试
第 17 章 动画精灵和碰撞检测
17.1 动画精灵
什么是动画精灵
Sprite 类
move() 方法
17.2 嘣 ! 碰撞检测
矩形碰撞与像素完美碰撞
17.3 统计时间
用 pygame.time.Clock() 控制帧速率
检查帧速率
调整帧速率
你学到了什么
测试题
动手试一试
第 18 章 一种新的输入——事件
18.1 事件
事件循环
事件队列
事件处理器
18.2 键盘事件
按键事件
重复按键
事件名和按键名
18.3 鼠标事件
18.4 定时器事件
18.5 另一个游戏——PyPong
球
球拍
控制球拍
记录分数并用 pygame.font 显示
跟踪还有几条命
增加一个生命计数器
游戏结束
你学到了什么
测试题
动手试一试
第 19 章 声音
19.1 从 Pygame 寻求更多帮助——mixer
19.2 制造声音与播放声音
19.3 播放声音
启动 pygame.mixer
19.4 控制音量
播放背景音乐
19.5 重复音乐
19.6 为 PyPong 增加声音
19.7 更多声音
19.8 为 PyPong 添加音乐
你学到了什么
测试题
动手试一试
第 20 章 更多 GUI
20.1 使用 PyQt
第 21 章 打印格式化与字符串
21.1 换行
print 和逗号
增加自己的换行符
特殊打印代码
21.2 水平间隔————制表符
如何打印反斜线
21.3 在字符串中插入变量
21.4 数字格式化
整数:%d 或%i
浮点数:%f 或 %F
E 记法:%e 和 %E
自动浮点数或 E 记法:%g 和 %G
如何打印百分号
多个格式化字符串
存储格式化数字
21.5 格式化的新方法
format() 方法
21.6 更多字符串处理
分解字符串
联接字符串
搜索字符串
在字符串中搜索:in 和 index()
删除字符串的一部分
改变大小写
你学到了什么
测试题
动手试一试
第 22 章 文件输入与输出
22.1 什么是文件
22.2 文件名
22.3 文件位置
看看你在哪里
关于路径已经讲得够多了
22.4 打开文件
22.5 读文件
一次读取一行
回到起始位置
22.6 文本文件和二进制文件
22.7 写文件
追加到文件
写文件
使用 print 写文件
22.8 在文件中保存内容:pickle
使用 pickle
还原
22.9 又到了游戏时间——Hangman
Hangman GUI
从词汇表得到单词
显示小人
检查猜到的字母
你学到了什么
测试题
动手试一试
第 23 章 碰运气——随机性
23.1 什么是随机性
23.2 掷骰子
多个骰子
连续 10 次
23.3 创建一副牌
洗牌
纸牌对象
23.4 Crazy Eights
主循环
明牌
当前花色
轮到玩家选择
显示手中的牌
得到玩家的选择
轮到计算机选择
记录分数
你学到了什么
测试题
动手试一试
第 24 章 计算机仿真
24.1 真实世界建模
24.2 Lunar Lander
模拟着陆
又是 Pygame
24.3 跟踪时间
24.4 时间对象
两个时间之差
小段时间
24.5 把时间保存到文件
24.6 电子宠物
GUI
算法
简单动画
试一试,再试一试
你学到了什么
测试题
动手试一试
第 25 章 Skier 游戏的说明
25.1 滑雪者
25.2 障碍物
创建单个障碍物
创建障碍物地图
你学到了什么
动手试一试
第 26 章 Python Battle
26.1 Python Battle
运行 Python Battle
游戏规则
26.2 创建一个 Python Battle 机器人
26.3 更复杂的机器人
26.4 坐标系统
方向
calculateCoordinates()
你学到了什么
动手试一试
第 27 章 接下来呢
27.1 致年龄小的读者
27.2 Python
27.3 游戏编程与 Pygame
27.4 其他语言的游戏编程(非 Python)
27.5 传承 BASIC
27.6 移动应用
27.7 回顾
附录 A 变量命名规则
附录 B Python 2 与 Python 3 的差异
print
input()
整除
range()
Python 2 到 Python 3 的转换
附录 C 自测题答案
第 1 章
测试题
动手试一试
第 2 章
测试题
动手试一试
第 3 章
测试题
动手试一试
第 4 章
测试题
动手试一试
第 5 章
测试题
动手试一试
第 6 章
测试题
动手试一试
第 7 章
测试题
动手试一试
第 8 章
测试题
动手试一试
第 9 章
动手试一试
第 10 章
动手试一试
第 11 章
测试题
动手试一试
第 12 章
测试题
动手试一试
第 13 章
测试题
动手试一试
第 14 章
测试题
动手试一试
第 15 章
测试题
动手试一试
第 16 章
测试题
动手试一试
第 17 章
测试题
第 18 章
测试题
动手试一试
第 19 章
测试题
动手试一试
第 20 章
测试题
动手试一试
第 21 章
测试题
动手试一试
第 22 章
测试题
动手试一试
第 23 章
测试题
动手试一试
第 24 章
测试题
动手试一试
第 26 章
动手试一试
评论