猜你喜欢
自学Python

自学Python

书籍作者:李金 ISBN:9787111586678
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:8430
创建日期:2021-02-14 发布日期:2021-02-14
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介
《自学Python——编程基础、科学计算及数据分析》是面向Python初学者的一本实用学习笔记。全书共10章:第1章介绍Python的基础知识,包括Anaconda、IPython解释器、Jupyter Notebook等Python基本工具的使用;第2章介绍Python的基本用法,包括基本语法、数据类型、判断与循环、函数与模块、异常与警告以及文件读写等;第3章介绍Python的进阶用法,包括函数进阶、迭代器和生成器、装饰器、上下文管理器以及变量作用域等;第4章介绍常见的Python标准库的使用;第5章介绍Python的科学计算基础模块NumPy,包括NumPy数组的基本操作、广播机制、索引和读写;第6章介绍Python的可视化模块Matplotlib,包括基于函数和对象的可视化操作;第7章介绍Python的科学计算进阶模块SciPy,包括一些高等数学的操作;第8章介绍Python的数据分析基础模块Pandas,包括Series和DataFrame的使用;第9章介绍Python的面向对象编程,包括对象的属性和方法、继承和复用,以及一个使用面向对象编程的实例;第10章介绍了一个用Python分析中文小说文本的实例。
《自学Python——编程基础、科学计算及数据分析》适合刚接触Python的初学者以及希望使用Python处理和分析数据的读者阅读,也可作为学习和使用Python的工具书或参考资料使用。
作者简介

《自学Python——编程基础、科学计算及数据分析》是面向Python初学者的一本实用学习笔记。全书共10章:第1章介绍Python的基础知识,包括Anaconda、IPython解释器、Jupyter Notebook等Python基本工具的使用;第2章介绍Python的基本用法,包括基本语法、数据类型、判断与循环、函数与模块、异常与警告以及文件读写等;第3章介绍Python的进阶用法,包括函数进阶、迭代器和生成器、装饰器、上下文管理器以及变量作用域等;第4章介绍常见的Python标准库的使用;第5章介绍Python的科学计算基础模块NumPy,包括NumPy数组的基本操作、广播机制、索引和读写;第6章介绍Python的可视化模块Matplotlib,包括基于函数和对象的可视化操作;第7章介绍Python的科学计算进阶模块SciPy,包括一些高等数...

(展开全部)

前言
前言
Python是一门十分流行的编程语言,它免费、易学,而且功能强大,在网络编程、图形用户界面编程、科学计算、数据挖掘、机器学习、人工智能等方面都有着广泛的应用。
我在一年的时间里,通过自学,从一个Python“小白”成长为了一个Python“老手”,并在这个过程中用笔记的形式记录了自己学习和使用Python的经验。本书就是根据本人的学习笔记整理而来,相信对同样开始学习并使用Python的朋友会有帮助。
《自学Python——编程基础、科学计算及数据分析》使用的集成开发环境是Anaconda,一个强大的Python计算环境。本书从初学者的角度出发,利用IPython解释器、Jupyter Notebook等Python工具,对Python的各个方面进行了介绍。
《自学Python——编程基础、科学计算及数据分析》首先介绍Python工具的使用,以及Python的基础和进阶用法,为读者打下良好的基础:优秀的工具能帮助读者更有效地学习和使用Python,基础和进阶用法能让读者对Python有一些基本的认知。
接着,本书介绍一些关键的Python模块,包括Python标准库中的自带模块、NumPy、Matplotlib、SciPy、Pandas等,这些模块提供了强大的功能:标准库模块提供了处理编程常见问题的工具,NumPy模块提供了科学计算的基础类型——数组,Matplotlib可以对数据进行可视化,SciPy可以进行一些高等数学的操作,而Pandas模块则提供了数据分析的基本 功能。
除了用法和模块,本书还介绍了Python中的面向对象编程,囿于篇幅,本书只介绍面向对象编程的用法,对这一机制不做过多介绍。
最后,在已学习内容的基础上,本书提供了一个用Python分析中文小说的实例,并简要介绍数据分析的一些基本流程,供读者参考。
《自学Python——编程基础、科学计算及数据分析》基于学习笔记而来,内容更贴近读者,例子也尽可能地简单易懂。除了介绍用法,本书还加入了很多原理解释,并辅以实例进行说明。因此,与其他Python书籍相比,本书不仅具有知其然的功能,还具有知其所以然的特点,从而能更好地帮助初学者进行学习。
《自学Python——编程基础、科学计算及数据分析》使用的Python版本为2.7。考虑到书中涉及模块的功能,可能会随版本更新而改变,因此,本书主要介绍各个模块的核心功能,对于一些细节用法不做过多介绍。



致谢
我要感谢我的家人,他们默默的支持,是我最坚实的后盾。
我要感谢我的导师张长水教授,他严谨的教导,使我终生受益。
我要感谢我的朋友蒋楠、胡捷、王磊和潘伟燊,感谢他们参与本书的编写工作。
我还要感谢辛苦的编辑王斌(IT大公鸡),有了他的鼎力协助,才有了这本书的成形与出版。
本书内容参考了很多朋友总结分享的资料和知识,虽不可能完全统计出对本书的内容做出贡献的所有人士,但在这里,我要对那些没有被提及的贡献者们致以最诚挚的谢意。
回顾这近一年的写作历程,我感觉十分幸运。种种机缘巧合促成了这本书的诞生,这段写作的过程也必将成为我一生中最值得记忆的一段经历。非常希望本书能够对学习Python的朋友有所帮助!

李 金
2017.8.27
目录
目录
前言
致谢
第1章 初识Python1
1.1 Python简介1
1.2 Python版本的选择2
1.3 Python集成开发环境的搭建2
1.4 第一行Python代码4
1.5 IPython解释器5
1.6 Python代码的执行模式7
1.6.1 解释器模式7
1.6.2 脚本模式8
1.6.3 解释器模式与脚本模式的区别9
1.7 Jupyter Notebook的使用9
本章学习笔记11
本章新术语11
本章新函数11
第2章 Python基础12
2.1 基本语法简介12
2.2 数据类型17
2.2.1 数字18
2.2.2 字符串23
2.2.3 Unicode字符串30
2.2.4 索引与分片32
2.2.5 列表34
2.2.6 元组40
2.2.7 可变与不可变类型42
2.2.8 字典44
2.2.9 集合与不可变集合48
2.2.10 赋值机制53
2.3 判断与循环58
2.3.1 判断58
2.3.2 循环62
2.4 函数与模块69
2.4.1 函数69
2.4.2 模块73
2.5 异常与警告77
2.5.1 异常77
2.5.2 警告83
2.6 文件读写83
2.6.1 读文件84
2.6.2 写文件85
2.6.3 中文文件的读写87
2.7 内置函数88
2.7.1 数字相关的内置函数88
2.7.2 序列相关的内置函数90
2.7.3 类型相关的内置函数92
本章学习笔记92
本章新术语92
本章新函数94
第3章 Python进阶96
3.1 函数进阶96
3.1.1 函数参数传递96
3.1.2 高阶函数98
3.1.3 函数map()、filter()和reduce()101
3.1.4 Lambda表达式102
3.1.5 关键字global103
3.1.6 函数的递归104
3.2 迭代器与生成器105
3.2.1 迭代器105
3.2.2 生成器110
3.3 装饰器112
3.3.1 装饰器的引入112
3.3.2 装饰器的用法115
3.4 上下文管理器与with语句118
3.4.1 上下文管理器的原理119
3.4.2 模块contextlib123
3.5 变量作用域125
本章学习笔记127
本章新术语128
本章新函数128
第4章 Python标准库129
4.1 系统相关:sys模块129
4.2 与操作系统进行交互:os模块133
4.3 字符串相关:string模块136
4.4 正则表达式:re模块138
4.5 日期时间相关:datetime模块142
4.6 更好地打印Python对象:pprint模块145
4.7 序列化Python对象:pickle,cPickle模块145
4.8 读写JSON数据:json模块147
4.9 文件模式匹配:glob模块150
4.10 高级文件操作:shutil模块151
4.11 更多的容器类型:collections模块153
4.12 数学:math模块157
4.13 随机数:random模块158
本章学习笔记159
本章新术语160
本章新函数160
第5章 Python科学计算基础:NumPy模块162
5.1 NumPy模块简介162
5.2 数组基础163
5.2.1 数组的引入163
5.2.2 数组的属性164
5.2.3 数组的类型166
5.2.4 数组的生成169
5.2.5 数组的索引172
5.2.6 数组的迭代174
5.3 数组操作175
5.3.1 数值相关的数组操作175
5.3.2 形状相关的数组操作179
5.3.3 数组的拼接操作184
5.3.4 数组的四则运算、点乘和矩阵类型187
5.3.5 数组的数学操作190
5.3.6 数组的比较和逻辑操作190
5.4 数组广播机制191
5.5 数组索引进阶194
5.5.1 数组基础索引194
5.5.2 数组的高级索引196
5.6 数组读写199
5.6.1 数组的读取199
5.6.2 数组的写入200
5.6.3 数组的二进制读写200
5.7 随机数组202
5.8 结构数组202
本章学习笔记206
本章新术语207
本章新函数207
第6章 Python可视化:Matplotlib模块209
6.1 Matplotlib模块简介209
6.2 基于函数的可视化操作210
6.2.1 函数plt.plot()的使用210
6.2.2 图与子图215
6.2.3 其他可视化函数217
6.3 基于对象的可视化操作217
6.4 图像中的文本处理219
6.5 实例:基于Matplotlib的三角函数可视化221
本章学习笔记226
本章新术语227
本章新函数227
第7章 Python科学计算进阶:SciPy模块228
7.1 SciPy模块简介228
7.2 插值模块:scipy.interpolate229
7.3 概率统计模块:scipy.stats233
7.3.1 基本统计量233
7.3.2 概率分布234
7.3.3 假设检验243
7.4 优化模块:scipy.optimize246
7.4.1 数据拟合247
7.4.2 最值优化251
7.4.3 方程求根254
7.5 积分模块:scipy.integrate255
7.5.1 符号积分与SymPy模块255
7.5.2 数值积分257
7.6 稀疏矩阵模块:scipy.sparse260
7.7 线性代数模块:scipy.linalg262
7.8 实例:基于SciPy的主成分分析268
本章学习笔记271
本章新术语272
本章新函数272
第8章 Python数据分析基础:Pandas模块274
8.1 Pandas简介274
8.2 一维数据结构:Series对象275
8.2.1 Series对象的生成275
8.2.2 Series对象的使用277
8.3 二维数据结构:DataFrame对象280
8.3.1 DataFrame对象的生成280
8.3.2 DataFrame对象的使用283
8.4 Pandas对象的索引286
8.4.1 基于中括号的索引和切片286
8.4.2 基于位置和标记的高级索引289
8.5 缺失值的处理293
8.6 数据的读写294
8.7 实例:基于Pandas的NBA数据分析295
本章学习笔记299
本章新术语299
本章新函数299
第9章 Python面向对象编程300
9.1 面向对象简介300
9.2 自定义类型303
9.3 方法和属性305
9.4 继承与复用311
9.5 公有、私有、特殊