第1章 程序设计概述 1
1.1 程序设计基础知识 1
1.1.1 程序与程序设计 1
1.1.2 算法及其描述 2
1.1.3 程序设计方法 10
1.2 Python语言的发展与特点 12
1.2.1 Python语言的发展历史 12
1.2.2 Python语言的特点 13
1.3 Python程序的运行 14
1.3.1 Python程序的运行环境 14
1.3.2 Python程序的运行方式 15
1.4 初识Python程序 19
1.4.1 Python程序演示 19
1.4.2 Python编程的基本规则 20
练习题 22
实验题 24
第2章 程序的数据描述 25
2.1 数据的基本形式 25
2.2 Python数据类型 29
2.2.1 数值类型 29
2.2.2 字符串类型 31
2.2.3 布尔类型 34
2.2.4 复合数据类型 34
2.3 常用模块函数 37
2.4 基本运算与表达式 40
2.4.1 算术运算 41
2.4.2 位运算 42
2.4.3 浮点数的计算误差 43
2.4.4 数据类型的转换 44
练习题 46
实验题 47
第3章 顺序结构程序设计 49
3.1 赋值语句 49
3.1.1 赋值语句的基本形式 49
3.1.2 复合赋值语句 50
3.1.3 多变量赋值 50
3.2 数据输入输出 52
3.2.1 基本输入输出 52
3.2.2 格式化输出 54
3.3 顺序结构程序举例 59
练习题 61
实验题 62
第4章 选择结构程序设计 64
4.1 条件的描述 64
4.1.1 关系运算 64
4.1.2 逻辑运算 65
4.1.3 测试运算 67
4.2 选择结构的实现 68
4.2.1 单分支选择结构 68
4.2.2 双分支选择结构 69
4.2.3 多分支选择结构 71
4.2.4 选择结构的嵌套 72
4.3 条件运算 74
4.4 选择结构程序举例 75
练习题 79
实验题 82
第5章 循环结构程序设计 84
5.1 while循环结构 84
5.1.1 while语句 84
5.1.2 while循环的应用 87
5.2 for循环结构 90
5.2.1 for语句 90
5.2.2 for循环的应用 93
5.3 循环控制语句 95
5.3.1 break语句 96
5.3.2 continue语句 97
5.3.3 pass语句 98
5.4 循环的嵌套 98
5.5 循环结构程序举例 100
练习题 105
实验题 107
第6章 字符串处理 109
6.1 字符串编码 109
6.2 字符串的索引与分片 112
6.2.1 字符串的索引 112
6.2.2 字符串的分片 113
6.3 字符串的操作 114
6.3.1 字符串连接操作 115
6.3.2 字符串逻辑操作 116
6.3.3 字符串的常用方法 118
6.4 bytes对象 122
6.5 字符串应用举例 124
练习题 127
实验题 128
第7章 列表与元组 129
7.1 序列的通用操作 129
7.1.1 序列的索引与分片 129
7.1.2 序列的计算 131
7.1.3 序列处理函数 132
7.1.4 序列拆分赋值 135
7.2 列表的专有操作 136
7.2.1 列表的基本操作 136
7.2.2 列表的方法 139
7.3 元组与列表的区别及转换 141
7.4 序列的应用 142
7.4.1 数据排序 143
7.4.2 数据检索 146
7.4.3 矩阵运算 148
练习题 151
实验题 154
第8章 字典与集合 156
8.1 字典的特点 156
8.2 字典的操作 157
8.2.1 字典的创建 158
8.2.2 字典的基本操作 159
8.2.3 字典对象的常用方法 161
8.2.4 字典的遍历 163
8.3 集合的操作 163
8.3.1 集合的创建 164
8.3.2 可变集合的方法 165
8.3.3 集合的运算 166
8.4 字典与集合的应用 168
练习题 169
实验题 171
第9章 函数 173
9.1 程序的模块化结构 173
9.2 函数的定义与调用 174
9.2.1 函数的定义 175
9.2.2 函数的调用 176
9.3 函数的参数传递 178
9.3.1 参数传递方式 178
9.3.2 参数的类型 181
9.4 函数的嵌套调用与递归调用 184
9.4.1 函数的嵌套调用 184
9.4.2 函数的递归调用 186
9.5 变量的作用域 190
9.5.1 局部变量 190
9.5.2 全局变量 191
9.6 匿名函数 193
9.7 Python模块 194
9.7.1 模块的创建与使用 194
9.7.2 Python程序结构 196
9.7.3 模块的有条件执行 196
9.7.4 标准库模块 197
9.8 函数应用举例 198
练习题 202
实验题 205
第10章 文件操作 210
10.1 文件的基本概念 210
10.2 文件的打开与关闭 212
10.2.1 打开文件 212
10.2.2 关闭文件 214
10.3 文本文件的操作 215
10.3.1 文本文件的读取 215
10.3.2 文本文件的写入 217
10.4 二进制文件的操作 220
10.4.1 文件的定位 220
10.4.2 二进制文件的读写 222
10.5 文件处理 225
10.6 文件应用举例 226
练习题 230
实验题 231
第11章 面向对象程序设计 233
11.1 从面向过程到面向对象 233
11.2 类与对象 235
11.2.1 类的定义 235
11.2.2 对象的创建和使用 236
11.3 属性和方法 236
11.3.1 属性和方法的访问控制 237
13.3.2 类属性和实例属性 238
11.3.3 类的方法 239
11.4 继承和多态 242
11.4.1 继承 242
11.4.2 多重继承 244
11.4.3 多态 245
11.5 面向对象程序设计应用举例 246
练习题 248
实验题 250
第12章 异常处理 252
12.1 异常处理概述 252
12.2 捕获和处理异常 253
12.2.1 Python中的异常类 254
12.2.2 使用try-except语句 254
12.2.3 使用try-finally语句 257
12.3 断言处理 257
12.4 主动引发异常与自定义异常类 258
12.4.1 主动引发异常 259
12.4.2 自定义异常类 259
练习题 260
实验题 261
第13章 图形处理 263
13.1 Tkinter图形库概述 263
13.1.1 tkinter模块 263
13.1.2 创建主窗口 264
13.2 画布 264
13.2.1 画布对象的操作 265
13.2.2 画布中的图形对象 266
13.3 图形的绘制 267
13.3.1 绘制矩形 268
13.3.2 绘制椭圆 271
13.3.3 绘制圆弧 273
13.3.4 绘制线条 274
13.3.5 绘制多边形 276
13.3.6 显示文本 276
13.3.7 显示图像 278
13.4 图形的事件处理 279
13.5 图形处理应用举例 281
13.5.1 统计图表 281
13.5.2 分形曲线 283
练习题 286
实验题 287
第14章 图形用户界面设计 289
14.1 创建图形用户界面的步骤 289
14.2 常见控件的用法 292
14.2.1 标签和消息框 292
14.2.2 按钮 294
14.2.3 复选框与单选按钮 295
14.2.4 文本框与框架 297
14.2.5 列表框与滚动条 300
14.2.6 可选项与刻度条 303
14.2.7 菜单与顶层窗口 304
14.3 对象的布局方式 307
14.3.1 pack布局管理器 307
14.3.2 grid布局管理器 308
14.3.3 place布局管理器 310
14.4 对话框 310
14.4.1 自定义对话框 310
14.4.2 标准对话框 311
14.5 事件处理 312
14.5.1 事件处理程序 313
14.5.2 事件绑定 314
14.6 图形用户界面应用举例 317
练习题 319
实验题 320
第15章 综合程序设计 322
15.1 设计步骤 322
15.2 线性方程组的求解 323
15.2.1 NumPy函数库 323
15.2.2 应用实例——小行星运行轨道计算问题 325
15.3 Graphics图形库的应用 327
15.3.1 模块导入与图形窗口 327
15.3.2 图形对象 328
15.3.3 交互式图形操作 334
15.3.4 应用实例——用动画来模拟天体运动效果 336
练习题 338
实验题 339
参考文献 340