编辑推荐
通过实际的Python 3.0代码示例展示Python与数学应用程序的紧密联系。
内容简介
本书展示了Python在数学应用程序中的强大功能以及如何运用最新版本Python 3.0的功能来解决计算问题。通过本书,读者将掌握如何将Python应用于线性代数、数组、绘画、迭代函数和多项式等数学知识中。本书内容主要有Python的主要语法元素、基本类型、如何通过matplotlib绘制高质量的表格和图形、如何正确运用面向对象程序等。
作者简介
作者克劳斯·福勒是瑞典隆德大学科学计算系的教授。他曾在许多国家和教学机构任教,拥有十分丰富的课堂教学经验,所教授的课程涉及各级数值分析和工程数学的密集程序设计。在与工业界的研究he作中,Claus还开发出了数值分析软件,并因此荣获了2016年度隆德大学工程学院教师奖。
章节目录
版权信息
内容提要
作者简介
译者简介
审稿人简介
致谢
前言
本书内容
本书的阅读前提
读者对象
Python vs.其他语言
关于Python的其他文献
排版约定
下载本书彩图
勘误
资源与支持
提交勘误
与我们联系
关于异步社区和异步图书
第1章 入门
1.1 安装和配置说明
1.1.1 安装
1.1.2 Anaconda
1.1.3 配置
1.1.4 Python Shell
1.1.5 执行脚本
1.1.6 获取帮助
1.1.7 Jupyter – Python笔记本
1.2 程序与控制流
1.2.1 注释
1.2.2 行连接
1.3 基本类型
1.3.1 数值类型
1.3.2 字符串
1.3.3 变量
1.3.4 列表
1.3.5 列表运算符
1.3.6 布尔表达式
1.4 使用循环来重复语句
1.4.1 重复任务
1.4.2 break和else
1.5 条件语句
1.6 使用函数封装代码
1.7 脚本和模块
1.7.1 简单的模块——函数的集合
1.7.2 使用模块和命名空间
1.8 解释器
1.9 小结
第2章 变量和基本数据类型
2.1 变量
2.2 数值类型
2.2.1 整数类型
2.2.2 浮点数
2.2.3 复数
2.3 布尔类型
2.3.1 布尔运算符
2.3.2 布尔类型转换
2.3.3 布尔类型自动转换
2.3.4 and和or的返回值
2.3.5 布尔值和整数
2.4 字符串类型
用于字符串和字符串方法的运算
2.5 小结
2.6 练习
第3章 容器类型
3.1 列表
3.1.1 切片
3.1.2 步长
3.1.3 列表修改
3.1.4 是否属于列表
3.1.5 列表方法
3.1.6 原位操作
3.1.7 列表合并——zip
3.1.8 列表推导
3.2 数组
3.3 元组
3.4 字典
3.4.1 创建和修改字典
3.4.2 循环遍历字典
3.5 集合
3.6 容器类型转换
3.7 类型检查
3.8 小结
3.9 练习
第4章 线性代数——数组
4.1 数组类型概要
4.1.1 向量和矩阵
4.1.2 索引和切片
4.1.3 线性代数运算
4.2 数学基础
4.2.1 作为函数的数组
4.2.2 基于元素的运算
4.2.3 形状和维数
4.2.4 点运算
4.3 数组类型
4.3.1 数组属性
4.3.2 用列表创建数组
4.4 访问数组项
4.4.1 基本数组切片
4.4.2 使用切片修改数组
4.5 数组构造函数
4.6 访问和修改形状
4.6.1 shape函数
4.6.2 维数
4.6.3 重塑
4.7 叠加
叠加向量
4.8 作用于数组的函数
4.8.1 通用函数
4.8.2 数组函数
4.9 SciPy中的线性代数方法
4.9.1 使用LU来求解多个线性方程组
4.9.2 使用SVD来解决最小二乘问题
4.9.3 其他方法
4.10 小结
4.11 练习
第5章 高级数组
5.1 数组视图和副本
5.1.1 数组视图
5.1.2 切片视图
5.1.3 转置和重塑视图
5.1.4 复制数组
5.2 数组比较
5.2.1 布尔数组
5.2.2 数组布尔运算
5.3 数组索引
5.3.1 使用布尔数组进行索引
5.3.2 使用where命令
5.4 代码性能和向量化
向量化
5.5 广播
5.5.1 数学视角
5.5.2 广播数组
5.5.3 典型示例
5.6 稀疏矩阵
5.6.1 稀疏矩阵格式
5.6.2 生成稀疏矩阵
5.6.3 稀疏矩阵方法
5.7 小结
第6章 绘图
6.1 基本绘图
6.2 格式化
6.3 meshgrid和contours函数
6.4 图像和等值线
6.5 matplotlib对象
6.5.1 坐标轴对象
6.5.2 修改线条属性
6.5.3 注释
6.5.4 曲线间的填充面积
6.5.5 刻度和刻度标签
6.6 绘制三维图
6.7 用绘图制作电影
6.8 小结
6.9 练习
第7章 函数
7.1 基本原理
7.2 形参和实参
7.2.1 参数传递——通过位置和关键字
7.2.2 更改实参
7.2.3 访问本地命名空间之外定义的变量
7.2.4 默认参数
7.2.5 可变参数
7.3 返回值
7.4 递归函数
7.5 函数文档
7.6 函数是对象
偏函数应用
7.7 匿名函数——lambda关键字
lambda结构总是可替换
7.8 装饰器
7.9 小结
7.10 练习
第8章 类
8.1 类的简介
8.1.1 类语法
8.1.2 _ _init_ _方法
8.2 属性和方法
8.2.1 特殊方法
8.2.2 彼此依赖的属性
8.2.3 绑定和未绑定方法
8.2.4 类属性
8.2.5 类方法
8.3 子类和继承
8.4 封装
8.5 装饰器类
8.6 小结
8.7 练习
第9章 迭代
9.1 for语句
9.2 控制循环内流程
9.3 迭代器
9.3.1 生成器
9.3.2 迭代器是一次性的
9.3.3 迭代器工具
9.3.4 递归序列的生成器
9.4 加速收敛
9.5 列表填充模式
9.5.1 使用append方法来填充列表
9.5.2 迭代器中的列表
9.5.3 存储生成的值
9.6 将迭代器作为列表使用
9.6.1 生成器表达式
9.6.2 压缩迭代器
9.7 迭代器对象
9.8 无限迭代
9.8.1 while循环
9.8.2 递归
9.9 小结
9.10 练习
第10章 异常处理
10.1 什么是异常
10.1.1 基本原理
10.1.2 用户定义异常
10.1.3 上下文管理器——with语句
10.2 查找错误:调试
10.2.1 漏洞
10.2.2 堆栈
10.2.3 Python调试器
10.2.4 调试命令
10.2.5 IPython调试
10.3 小结
第11章 命名空间、范围和模块
11.1 命名空间
11.2 变量范围
11.3 模块
11.3.1 简介
11.3.2 IPython模块
11.3.3 变量_ _name_ _
11.3.4 一些有用的模块
11.4 小结
第12章 输入和输出
12.1 文件处理
12.1.1 文件交互
12.1.2 文件是可迭代的
12.1.3 文件模式
12.2 NumPy方法
12.2.1 savetxt
12.2.2 loadtxt
12.3 Pickling
12.4 Shelves
12.5 读写Matlab数据文件
12.6 读写图像
12.7 小结
第13章 测试
13.1 手动测试
13.2 自动测试
测试二分算法
13.3 使用unittest包
测试setUp和tearDown方法
13.4 参数化测试
13.5 断言工具
13.6 浮点值比较
13.7 单元和功能测试
13.8 调试
13.9 测试发现
13.10 测量执行时间
13.10.1 用魔法函数计时
13.10.2 使用Python的timeit计时模块
13.10.3 用上下文管理器计时
13.11 小结
13.12 练习
第14章 综合示例
14.1 多项式
14.1.1 理论背景
14.1.2 任务
14.2 多项式类
14.3 牛顿多项式
14.4 谱聚类算法
14.5 解决初始值问题
14.6 小结
14.7 练习
第15章 符号计算——SymPy
15.1 什么是符号计算
SymPy示例说明
15.2 SymPy的基本元素
15.2.1 符号——所有公式的基础
15.2.2 数字
15.2.3 函数
15.3 基本函数
Lambda -函数
15.4 符号线性代数
符号矩阵
15.5 SymPy线性代数方法示例
15.6 替换
15.7 评估符号表达式
示例:牛顿法的收敛阶研究
15.8 符号表达式转化为数值函数
多项式系数参数依赖性研究
15.9 小结
参考文献
Python3.0科学计算指南是2018年由人民邮电出版社出版,作者[瑞典] 克劳斯·福勒 。
得书感谢您对《Python3.0科学计算指南》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。