首页>参考读物>计算机科学与技术>软件与程序设计

Python科学计算入门与实战(视频教学版)
作者 : 裴尧尧 李丽华 陈智 肖衡林 著
出版日期 : 2020-12-02
ISBN : 978-7-111-66989-0
定价 : 129.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 460
开本 : 16
原书名 :
原出版社:
属性分类: 店面
包含CD : 无CD
绝版 : 未绝版
图书简介

作为一本Python科学计算的入门书籍,本书结合科学计算实例循序渐进地介绍Python科学计算编程基础。本书共6章:第1章简单公式的程序化,围绕如何使用Python实现科学计算中简单公司的程序化;第2复杂公式程序化,重点介绍Python中的程序控制,将复杂的公式程序化;第3公式对象化,主要介绍Python中面向对象的程序设计;第4公式向量化,全方位介绍Python最著名的科学计算库NumPy的功能,并结合数组的可视化,让读者更轻松地理解和使用NumPy;第5公式可视化,介绍Python著名的高质量二维绘图库Matplotlib的功能;第6公式中的随机数,介绍Python中如何生成并灵活使用随机数和随机数数组,并结合大量实例综合应用本书讲解的内容。本书适合Python科学计算的入门读者和高校理工科专业的学生。

图书特色

深度分享作者10余年的Python科学计算经验,10小时配套视频/98个典型实例/10个综合案例/32个延伸知识点/92个配套习题/教学PPT,即便Python基础为零,也能快速上手

配书资源:
10小时教学视频
实例源代码
教学PPT

图书前言

写作背景
  记得2009年笔者还在攻读硕士学位时,一天同年级的一个同学让笔者帮他求解一个最优化问题。当时笔者对最优化计算还是一知半解,于是到学校图书馆借了一本MATLAB最优化计算的图书,照着书上的求解步骤用MATLAB帮他解决了问题。从那时起,笔者就对最优化计算产生了浓厚的兴趣,并开始学习最优化计算的基本原理。时至今日,笔者仍然对最优化计算的理论和实践有着浓厚的兴趣。可以说,是最优化计算吸引笔者走进了科学计算的世界。
  后来笔者想开发自己的软件,又学习了C、C++和C#等编程语言,这为笔者后续学习其他语言奠定了一定的基础。现在回想起来,当初之所以没有继续深入学习C和C++语言,是因为对于笔者这样的非计算机专业学生而言,这两种语言无论是学习难度还是使用成本都过高,C#语言虽然简单一些,但是在跨平台方面不具备优势。一次偶然的机会,笔者接触了Python语言,因为有C和C++语言基础,所以学习起来比较容易。自此以后,笔者便一发不可收拾,一用Python就是11年之久。在笔者看来,Python是理工科非计算机专业学生的首选编程语言,因为他们毕业后所从事的工作大多会涉及科学计算,而Python非常适合做科学计算。
  尽管市面上的Python图书已经汗牛充栋,但关于科学计算方面的图书却寥寥无几,而且这些图书需要读者有一定的Python编程基础才能阅读,这无疑增加了读者的学习负担。虽然Python很强大,可以胜任各领域的开发工作,但是科学计算并不要求读者全面掌握Python编程,读者也无须为了做科学计算而专门花大把时间精研Python编程。比较理想的做法是,用一本书带领读者掌握Python科学计算。于是,笔者萌生了一个想法:编写一本书,将Python编程的基础知识和科学计算结合起来讲解,让读者更加有针对性地学习,从而快速入门Python科学计算。
写作经历
  笔者曾经作为第一作者参与编写了《Python与有限元》一书,介绍如何用Python开发一个有限元分析框架,历经一年,其中,前八个月编写有限元分析框架程序,后四个月完成图书的写作。后来笔者又编写了《从零开始自己动手写区块链》一书,介绍区块链的原理与底层编程知识,历经八个月,前四个月编写区块链模拟器程序,后四个月完成图书的写作。这两本书都有一个共同点:先写好完整的程序,然后将编程的过程用文字描述出来,写作的难点在于程序的实现。本书是笔者参与编写的第三本书,也是写作时间最长的一本书,历时一年零八个月。本书与前两本书有所不同,书中介绍的程序对于笔者来说实现起来很容易,其难点在于如何将Python编程的相关知识与科学计算巧妙地结合起来,让读者能够轻松地走进Python科学计算的世界。为此,本书尝试采用一种新的写作风格:书中的章节划分以科学计算实例为依据,在解决科学计算问题的过程中穿插介绍需要学习的Python编程知识。于是,本书的写作难点成了经典实例的选择问题,因为实例的选择要具有代表性,是读者熟知和感兴趣的例子,还要能够将Python编程知识穿插其中。这无疑是一件极具挑战性的事,本书中的每一个例子都经过了“选择→构思→推翻→重新选择→重新构思→采纳”的复杂过程,这对于笔者这样有选择困难症的人来说,可谓劳心费神。所幸经过大量的遴选,笔者最终选出了较为满意的实例。
本书特色
* 提供了长达10小时的配套教学视频,帮助读者更加高效、直观地学习本书内容。
* 将Python基础知识和科学计算结合起来讲解,让没有任何Python编程基础的读者快速入门。
* 精心挑选了大量的典型实例,带领读者从实践中学习Python科学计算。
* 穿插了大量的延伸阅读内容,帮助读者更加全面和深入地掌握相关知识点。
* 每章都提供了习题,帮助读者巩固和提高所学知识。
* 每章都设置了“老裴的科学世界”学习专栏作为补充学习内容,帮助读者拓宽视野,提高解决实际问题的能力。
* 提供教学PPT,方便读者学习和相关老师教学使用。
本书内容
  第1章围绕简单公式程序化的主题展开,介绍了如何使用Python将科学计算中的简单公式程序化,涵盖Python的安装和运行、编程的基本概念、基本语法、运算符和数字数据类型等,还重点介绍了Python中函数的定义。
  第2章围绕复杂公式程序化的主题展开,重点介绍了Python中的流程控制,包括条件分支语句和循环语句,另外还介绍了与流程控制相关的内置容器型数据类型,如列表、元组、集合和字典。
  第3章围绕公式对象化的主题展开,主要介绍了Python面向对象程序设计,包括类和实例,属性和方法,类的继承和方法的重载等,另外还循序渐进地介绍了如何打包并发布自己编写的库。
  第4章围绕公式向量化的主题展开,结合数组运算可视化,全方位地介绍了Python的科学计算库NumPy。
  第5章围绕公式可视化的主题展开,详细介绍了Python的高质量二维绘图库Matplotlib的相关绘图功能。
  第6章介绍了Python中随机数的生成方法,并配合多个典型实例综合应用前面章节所学的知识。
关于专栏
  本书在每章的最后设置了一个专栏——老裴的科学世界,主要介绍一些综合性案例。这些案例有的是对本章所讲知识的综合应用,有的是对下一章所做的铺垫,有的穿插介绍Python的其他功能,如GUI开发、Web开发和动画制作等。开设这个专栏的目的是综合应用所学知识解决实际问题,并拓宽读者的视野,提高读者解决实际问题的能力。与正文相比,专栏对理论和程序的细节介绍较少,用到了GUI和Web开发等领域的一些工具,如果读者有疑问,可以和笔者私下交流。
读者对象
  本书面向的读者对象较为广泛,主要有以下几类:
* 没有Python基础的科学计算入门人员;
* 从事科学计算研究的人员;
* 从事科学计算工作的工程技术人员;
* Python科学计算爱好者;
* 高等院校理工科相关专业的学生;
* 相关培训机构的学员。
配书资源获取
  本书提供以下配书资源:
* 配套教学视频;
* 源代码文件;
* 教学PPT。
  这些资源需要读者自行下载。请在机工新阅读网站(www.cmpreading.com)上搜索到本书,然后单击“资料下载”按钮,即可在本书页面上找到下载链接。
后续计划
  起初,笔者计划将本书的写作分两步:第一步介绍科学计算入门知识,第二步结合科学计算库讲解实践。但是因为科学计算的内容较为庞杂,当完成第一步时,书稿篇幅已较大,超过了原来的计划。在与编辑商量后决定将入门部分单独作为一本书,后续再编写《Python最优化算法实战》及《Python科学计算实例详解》两本书作为实践用书。
致谢
  本书在出版的过程中得到了湖北工业大学博士启动基金项目(BSQD14042)的资助,在此表示感谢!
  感谢湖北工业大学土木建筑与环境学院的领导与同事!他们的支持、帮助和鼓励,让笔者在面对挑战时能勇往直前。
  编写这样的一本书对笔者而言是一个巨大的工程,为了不耽搁进度,笔者邀请了李丽华、陈智和肖衡林三位同行一起完成这件事,在此对他们表示感谢!
  感谢欧振旭和姚志娟编辑!本书从宏观把握到细节处理都凝聚了他们的大量心血。
  感谢家人在长达一年零八个月的写作时间中对笔者的无私奉献和大力支持!
勘误与支持
  因本书涉及的内容比较繁杂,加之作者水平所限,书中可能还存在一些疏漏和错误之处,敬请各位读者批评和指正。读者在阅读本书时若有疑问,可以发送电子邮件到yaoyao.bae@foxmail.com或hzbook2017@163.com以获得帮助,也可以加入本书QQ群(群号:966908831)和其他读者交流。期待您的反馈意见,您的支持是笔者前进的动力。
  
  裴尧尧
  于湖北工业大学

上架指导

计算机/程序设计/Python

封底文字

内容简介:

  本书介绍了作者多年的Python科学计算编程经验,试图为初学者提供一条快速学习的路线,从而有效降低学习门槛和成本。本书将Python科学计算的理论知识与实践经验结合起来,通过大量的典型实例带领零基础读者快速上手。本书图文并茂,在讲解时穿插了上百幅图片,可以帮助读者理解重点和难点。另外,作者还特意为本书制作了教学PPT,并录制了长达10小时的配套教学视频,以帮助读者更加高效、直观地学习。
  本书分为6章。第1章以简单公式程序化为主题,介绍Python编程的入门知识、数值数据类型和函数;第2章以复杂公式程序化为主题,介绍Python中的流程控制和多值数据类型;第3章以公式对象化为主题,结合4个实例介绍Python的面向对象编程,以及如何打包Python程序;第4章以公式向量化为主题,介绍Python的著名数值运算库NumPy的基础知识和使用方法;第5章以公式可视化为主题,介绍Python的著名绘图库Matplotlib的使用方法;第6章介绍Python中的随机数生成方法,并配合10余个实例对前面章节的知识进行综合应用。
  本书内容丰富,讲解通俗易懂,适合初学科学计算的相关人员阅读,尤其适合高等院校相关专业的本科生和研究生阅读,也适合数据科学和人工智能等相关领域的工程技术人员阅读。另外,本书还适合作为相关培训机构的教学用书。

编辑推荐:
提供大量的配套教学视频,帮助读者更加高效、直观地学习;
将Python基础知识和科学计算相结合,让零基础读者快速入门;
精心挑选大量的典型实例,带领读者从实践中学习Python科学计算;
穿插大量的延伸阅读内容,让读者更加全面和深入地掌握相关知识点;
每章都提供多个配套练习题,帮助读者巩固和提高所学知识;
每章都有“老裴的科学世界”专栏,帮助读者拓宽视野,提高解决实际问题的能力;
提供教学PPT,方便读者学习和相关老师教学使用。

图书目录

前言
第1章 简单公式程序化 1
1.1 安装Python 1
1.1.1 安装IDLE 1
1.1.2 安装Anaconda 2
1.1.3 本书为什么使用IDLE 3
1.2 抛物线公式 3
1.2.1 语句、表达式和值 4
1.2.2 变量与赋值 6
1.2.3 注释 14
1.2.4 格式化输出 15
1.2.5 初识对象和类 17
1.2.6 运算符 20
1.3 煮蛋公式 27
1.3.1 库与模块 28
1.3.2 函数 31
1.3.3 复数 51
1.3.4 算法与程序流程 52
1.4 本章小结 54
1.5 习题 55
老裴的科学世界 57
房贷计算器 58
第2章 复杂公式程序化 67
2.1 出租车费 67
2.1.1 条件分支 68
2.1.2 错误与异常 74
2.2 调和级数 80
2.2.1 while循环 81
2.2.2 列表和元组 86
2.2.3 for循环 95
2.2.4 函数和对象 102
2.2.5 函数进阶 108
2.2.6 列表解析 111
2.2.7 生成器 119
2.3 演讲的重点 122
2.3.1 字符串 123
2.3.2 集合 132
2.3.3 字典 139
2.3.4 数据类型总结 148
2.4 本章小结 149
2.5 习题 150
老裴的科学世界 154
中文分词器 154
第3章 公式对象化 165
3.1 抛物线对象 165
3.1.1 定义类 167
3.1.2 属性和方法 167
3.2 鸡蛋对象 174
3.2.1 类属性 174
3.2.2 静态方法 176
3.2.3 层级关系 177
3.3 向量对象 178
3.3.1 运算符 179
3.3.2 其他特殊方法 183
3.4 平面几何 184
3.4.1 类的继承 186
3.4.2 更多知识 192
3.4.3 打包 206
3.4.4 发布到PyPi 212
3.5 本章小结 213
3.6 习题 214
老裴的科学世界 215
球的运动轨迹 215
第4章 公式向量化 224
4.1 地表温度辐射 224
4.1.1 向量化表达 225
4.1.2 ndarray对象 228
4.1.3 创建数组 234
4.2 小明预估成绩 243
4.2.1 数组操作 245
4.2.2 数组运算 278
4.3 弹簧系统 314
4.3.1 线性代数相关函数 314
4.3.2 其他功能 327
4.4 本章小结 332
4.5 习题 332
老裴的科学世界 334
化学方程式配平 334
第5章 公式可视化 340
5.1 绘制曲线图 342
5.1.1 一轴一图形 342
5.1.2 一轴多图形 346
5.1.3 多轴多图形 356
5.1.4 高级绘图 362
5.2 绘制其他图形 373
5.2.1 散点图 373
5.2.2 柱状图 375
5.2.3 饼状图 380
5.2.4 直方图 381
5.2.5 箱形图 382
5.2.6 棉棒图 384
5.2.7 误差棒图 385
5.2.8 阶梯图 386
5.2.9 填充图 387
5.2.10 堆叠图 388
5.2.11 对数图 389
5.2.12 等高线图 390
5.2.13 三维图形 392
5.3 本章小结 395
5.4 习题 395
老裴的科学世界 396
曲柄连杆机构运动动画 396
第6章 随机数与实例 402
6.1 微信随机红包 402
6.1.1 生成随机数 403
6.1.2 随机数种子 407
6.1.3 更多实例 408
6.2 奇妙的圆周率 417
6.2.1 随机数数组 418
6.2.2 更多实例 423
6.3 本章小结 436
6.4 习题 436
老裴的科学世界 437
病毒传播离散模型 437
参考文献 449

教学资源推荐
作者: 吴黎兵 熊建强 杨鏖丞
作者: (美)Richard Johnsonbaugh;Martin Kalin 著
作者: Kathryn E.Sanders, Andries Van Dam
参考读物推荐
作者: David Flanagan
作者: (美)Elizabeth Drake 著
作者: 余洪春 著