《趣学Python编程》
第1部分 学习编程
第1章 Python不是大蟒蛇 3
1.1 关于计算机语言 3
1.2 安装Python 4
1.2.1 在Windows 7上安装Python 4
1.2.2 在苹果OS X上安装Python 6
1.2.3 在Ubuntu上安装Python 8
1.3 当你安装好Python以后 9
1.4 保存Python程序 10
1.5 你学到了什么 12
第2章 计算与变量 13
2.1 用Python来做计算 13
2.1.1 Python的运算符 14
2.1.2 运算的顺序 15
2.2 变量就像是标签 16
2.3 使用变量 17
2.4 你学到了什么 20
第3章 字符串、列表、元组和字典 21
3.1 字符串 21
3.1.1 创建字符串 21
3.1.2 处理字符串相关的问题 23
3.1.3 在字符串里嵌入值 25
3.1.4 字符串乘法 26
3.2 列表比字符串还强大 27
3.2.1 添加元素到列表 29
3.2.2 从列表中删除元素 30
3.2.3 列表上的算术 31
3.3 元组 32
3.4 Python里的map不是用来指路的 33
3.5 你学到了什么 35
3.6 编程小测验 36
第4章 用海龟画图 37
4.1 使用Python的turtle(海龟)模块 37
4.1.1 创建画布 38
4.1.2 移动海龟 39
4.2 你学到了什么 43
4.3 编程小测验 43
第5章 用if和else来提问 45
5.1 if语句 45
5.2 语句块就是一组程序语句 45
5.3 条件语句帮助我们做比较 48
5.4 if-then-else语句 49
5.5 if和elif语句 50
5.6 组合条件 51
5.7 没有值的变量——None 52
5.8 字符串与数字之间的不同 52
5.9 你学到了什么 55
5.10 编程小测验 55
第6章 循环 57
6.1 使用for循环 57
6.2 还有一种叫while的循环 64
6.3 你学到了什么 67
6.4 编程小测验 67
第7章 使用函数和模块来重用你的代码 69
7.1 使用函数 69
7.1.1 函数的组成部分 70
7.1.2 变量和作用域 71
7.2 使用模块 73
7.3 你学到了什么 75
7.4 编程小测验 76
第8章 如何使用类和对象 78
8.1 把事物拆分成类 78
8.1.1 父母与孩子 79
8.1.2 增加属于类的对象 80
8.1.3 定义类中的函数 81
8.1.4 用函数来表示类的特征 81
8.1.5 为什么使要用类和对象 82
8.1.6 画图中的对象与类 84
8.2 对象和类的另一些实用功能 86
8.2.1 函数继承 87
8.2.2 从函数里调用其他函数 88
8.3 初始化对象 89
8.4 你学到了什么 90
8.5 编程小测验 90
第9章 Python的内建函数 92
9.1 使用内建函数 92
9.1.1 abs函数 92
9.1.2 bool函数 93
9.1.3 dir函数 94
9.1.4 eval函数 96
9.1.5 exec函数 97
9.1.6 float函数 98
9.1.7 int函数 98
9.1.8 len函数 99
9.1.9 max和min函数 100
9.1.10 range函数 101
9.1.11 sum函数 102
9.2 使用文件 103
9.2.1 创建测试文件 103
9.2.2 在Python中打开文件 106
9.2.3 写入到文件 107
9.3 你学到了什么 108
9.4 编程小测验 108
第10章 常用的Python模块 109
10.1 使用copy模块来复制 109
10.2 keyword模块记录了所有的关键字 112
10.3 用random模块获得随机数 112
10.3.1 用randint来随机挑选一个数字 112
10.3.2 用choice从列表中随机选取一个元素 114
10.3.3 用shuffle来给列表洗牌 115
10.4 用sys模块来控制Shell程序 115
10.4.1 用exit函数来退出Shell程序 115
10.4.2 从stdin对象读取 115
10.4.3 用stdout对象来写入 116
10.4.4 我用的Python是什么版本的 116
10.5用time模块来得到时间 117
10.5.1 用asctime来转换日期 118
10.5.2 用localtime来得到日期和时间 119
10.5.3 用sleep来休息一会儿吧 120
10.6 用pickle模块来保存信息 120
10.7 你学到了什么 122
10.8 编程小测验 122
第11章 高级海龟作图 124
11.1 从基本的正方形开始 124
11.2 画星星 125
11.3 画汽车 128
11.4 填色 130
11.4.1 用来画填色圆形的函数 131
11.4.2 使用纯白和纯黑 132
11.5 画方形的函数 133
11.6 画填色正方形 134
11.7 画填好色的星星 135
11.8 你学到了什么 137
11.9 编程小测验 137
第12章 用tkinter画高级图形 139
12.1 创造一个可以点的按钮 140
12.2 使用具名参数 142
12.3 创建一个画图用的画布 142
12.4 画线 143
12.5 画盒子 144
12.5.1 画许多矩形 146
12.5.2 设置颜色 148
12.6 画圆弧 151
12.7 画多边形 153
12.8 显示文字 154
12.9 显示图片 155
12.10 创建基本的动画 157
12.11 让对象对操作有反应 159
12.12 更多使用ID的方法 161
12.13 你学到了什么 163
12.14 编程小测验 163
第2部分 弹球实例
第13章 你的第一个游戏:弹球 167
13.1 击打反弹球 167
13.2 创建游戏的画布 168
13.3 创建Ball类 169
13.4 增加几个动作 171
13.4.1 让小球移动 171
13.4.2 让小球来回反弹 172
13.4.3 改变小球的起始方向 174
13.5 你学到了什么 176
第14章 完成你的第一个游戏:反弹吧,小球! 177
14.1 加上球拍 177
14.2 让球拍移动 179
判断小球是否击中球拍 180
14.3 增加输赢因素 183
14.4 你学到了什么 187
14.5 编程小测验 187
第3部分 火柴人实例
第15章 火柴小人游戏的图形 191
15.1 火柴小人游戏计划 191
15.2 得到GIMP 192
15.3 创建游戏中的元素 193
15.3.1 准备一个有透明背景的图形 194
15.3.2 画火柴人 195
15.3.3 画平台 197
15.3.4 画门 197
15.3.5 画背景 198
15.3.6 透明 199
15.4 你学到了什么 200
第16章 开发火柴人游戏 201
16.1 创建Game类 201
16.1.1 设置窗口标题以及创建画布 201
16.1.2 完成__init__函数 202
16.1.3 创建主循环函数 203
16.2 创建坐标类 205
16.3 冲突检测 205
16.3.1 精灵在水平方向上冲突 206
16.3.2 精灵在垂直方向上冲突 208
16.3.3 把它们放在一起:最终的冲突检测代码 208
16.4 创建精灵类 210
16.5 添加平台类 211
16.5.1 加入平台对象 212
16.5.2 添加很多平台 213
16.6 你学到了什么 215
16.7 编程小测验 215
第17章 创建火柴人 217
17.1 初始化火柴人 217
17.1.1 装入火柴人图形 217
17.1.2 设置变量 218
17.1.3 与键盘按键绑定 219
17.2 让火柴人向左转和向右转 220
17.3 让火柴人跳跃 221
17.4 我们都做了什么 221
17.5 你学到了什么 222
第18章 完成火柴人逃生游戏 223
18.1 让火柴人动起来 223
18.1.1 创建动画函数 223
18.1.2 得到火柴人的位置 226
18.1.3 让火柴人移动 227
18.2 测试我们的火柴人精灵 235
18.3 门 235
18.3.1 创建DoorSprite类 236
18.3.2 门的检测 237
18.3.3 加入门对象 237
18.4 最终的游戏 238
18.5 你学到了什么 244
18.6 编程小测验 245
结束语 接下来学什么 246
附录 Python的关键字 253
术语表 265