第1章 Python入门 1
1.1 算法与算法思想 1
1.1.1 算法思想 2
1.1.2 状态 3
1.1.3 “a=a+1”是什么意思 4
1.1.4 符号和数字的对比 5
1.2 启动Python 6
1.2.1 IPython控制台 7
1.2.2 错误信息 13
1.2.3 如何获取帮助 13
1.2.4 好的做法:记录日志 15
1.3 Python模块 15
1.3.1 import 15
1.3.2 from...import 16
1.3.3 NumPy和PyPlot模块 17
1.4 Python表达式 18
1.4.1 数字 18
1.4.2 算术操作和预定义函数 19
1.4.3 好的做法:变量命名 21
1.4.4 更多的函数相关信息 22
第2章 数据结构与程序控制 24
2.1 对象和方法 24
2.2 列表、元组和数组 27
2.2.1 创建列表和元组 28
2.2.2 NumPy数组 28
2.2.3 为数组填充值 30
2.2.4 数组的连接 32
2.2.5 访问数组元素 33
2.2.6 数组和赋值 34
2.2.7 数组切片 35
2.2.8 数组展平 37
2.2.9 更改数组形状 38
2.2.10 以列表和数组为索引? 38
2.3 字符串 39
2.3.1 使用format方法格式化字符串 41
2.3.2 使用“%”格式化字符串 43
2.4 循环 43
2.4.1 for循环 44
2.4.2 while循环 46
2.4.3 循环长时间运行 46
2.4.4 死循环 47
2.5 数组操作 47
2.5.1 矢量化数学 48
2.5.2 数组化简 50
2.6 脚本 51
2.6.1 Editor窗格 52
2.6.2 其他编辑器 53
2.6.3 调试的第一步 54
2.6.4 好的做法:做注释 57
2.6.5 好的做法:使用命名参数 61
2.6.6 好的做法:注意单位问题 62
2.7 或有行为:分支 63
2.7.1 if语句 64
2.7.2 真值的处理 65
2.8 嵌套 65
第3章 数据输入、结果输出 67
3.1 导入数据 68
3.1.1 获取数据 68
3.1.2 将数据导入Python 70
3.2 导出数据 73
3.2.1 脚本 73
3.2.2 数据文件 74
3.3 数据可视化 77
3.3.1 plot及相关命令 77
3.3.2 绘图的调整与装饰 81
3.3.3 误差条 83
3.3.4 3D图形 84
3.3.5 多重绘图 85
3.3.6 子绘图 87
3.3.7 保存图形 87
3.3.8 在其他应用中使用图形 88
第4章 首次上机实验 90
4.1 艾滋病病毒载量模型 90
4.1.1 探究模型 91
4.1.2 匹配实验数据 92
4.2 细菌实验 93
4.2.1 探究模型 93
4.2.2 匹配实验数据 94
第5章 Python进阶 96
5.1 自定义函数 97
5.1.1 定义Python函数 97
5.1.2 更新函数 100
5.1.3 参数、关键字和缺省值 101
5.1.4 返回值 102
5.1.5 函数式编程 103
5.2 随机数和模拟 105
5.2.1 模拟抛硬币 105
5.2.2 生成轨迹线 106
5.3 直方图和条形图 107
5.4 等势线绘图和曲面 109
5.4.1 生成绘图点网格 109
5.4.2 等势线绘图 110
5.4.3 曲面绘图 111
5.5 非线性方程的数学求解 111
5.5.1 一般实函数 112
5.5.2 多项式的复数根 113
5.6 求解线性等式 114
5.7 数值积分 115
5.7.1 对预定义函数积分 116
5.7.2 对自定义函数积分 117
5.7.3 对震荡函数积分 117
5.7.4 参数依赖性? 118
5.8 微分方程的数值解 118
5.8.1 问题重构 119
5.8.2 ODE求解 120
5.8.3 参数依赖 122
5.9 向量场和流线图 123
5.9.1 向量场 123
5.9.2 流型 124
第6章 第二次上机实验 126
6.1 生成和绘制轨迹 126
6.2 绘制位移分布 127
6.3 少见事件 129
6.3.1 泊松分布 129
6.3.2 等待时间 131
第7章 更多的技术 133
7.1 图像处理 133
7.1.1 图像和数字数组 134
7.1.2 操作图像 135
7.2 动画 135
7.2.1 创建动画 136
7.2.2 保存动画 137
7.3 分析计算 141
7.3.1 SymPy软件包 141
7.3.2 Wolfram Alpha 142
第8章 第三次上机实验 145
8.1 卷积 146
8.1.1 Python的图像处理工具 146
8.1.2 图像平均 148
8.1.3 使用高斯滤波器做平滑 149
8.2 图像去噪 149
8.3 特征强调 150
继续努力 152
附录A 安装Python 154
A.1 安装Python和Spyder 154
A.1.1 图形界面安装 155
A.1.2 命令行安装 156
A.2 设置Spyder 159
A.2.1 工作目录 159
A.2.2 交互图形 159
A.2.3 脚本模块 159
A.2.4 重启 160
A.3 加速 160
A.4 保持版本最新 161
A.5 安装FFmpeg 161
附录B 错误和错误消息 164
B.1 Python错误概述 165
B.2 一些常见的错误 166
附录C 比较Python 2与Python 3 170
C.1 除法 171
C.2 用户输入 171
C.3 打印命令 172
C.4 更多帮助 173
附录D 深入学习 174
D.1 赋值语句 174
D.2 内存管理 177
D.3 函数 177
D.4 作用域 178
D.4.1 命名冲突 180
D.4.2 作为参数传递变量 181
D.5 总结 182
附录E 练习的解答 183
致谢 189
参考文献 190