内容简介
本书分为25章,前16章是Python语言基础概念。从第17章到第22章,介绍了常用的Python程序外部第三。第23章到第25章是三个实践案例,展示了金融市场的应用一角。主要内括:Python简介、Python语法基础、数据类型与对象、运算符与表达式等。
目录
部分 Python基础
第pan style="font-family:宋体">章 Python简介
1.1 Python基础
1.1.pan style="font-family:宋体">编程语言是什么?
1.1.2Python是什么?
1.1.3Python的历史
1.1.4Python的优点
1.1.5 Python可以做什么?
1.2开发环境安装
1.2.pan style="font-family:宋体">下载Python 3.6
1.2.2在Windows 上安装Python
1.2.3验证Python是否正确安装
1.2.4 Windows 环境安装Jupyter 学
1.2.5 Jupyter Notebook的使用
第2章Python语法基础
2.pan style="font-family:宋体">行结构与
2.2代码注释
2.3标识符命名规则
2.4系统保留字
第3章 数据类型与对象
3.pan style="font-family:宋体">常量与变量
3.1.pan style="font-family:宋体">变量是什么
3.1.2常量是什么
3.1.3 入门的简单例子Tutorials
3.2基础类型——数值类型
3.2.pan style="font-family:宋体">空值类型(None)
3.2.2 布尔型(bool)
3.2.3 整型(int)
3.2.4 浮点型(float)
3.2.5 复数类型(complex)
3.3序列类型——字符串(str)
3.3.pan style="font-family:宋体">宇符串简介
3.3.2字符串操作
3.4序列类型——列表(list)
3.4.pan style="font-family:宋体">列表简介
3.4.2列表操作
3.5序列类型——元组(tuple)
3.5.pan style="font-family:宋体">元组简介
3.5.2元组操作
3.6 映射类型――字典(dict)
3.6.pan style="font-family:宋体">字典简介
3.6.2字典操作
3.7 集合类型—―集合(set)
3.7.pan style="font-family:宋体">集合简介
3.7.2集合操作
3.8 集合类型——冻结集合(frozenset)
3.8.pan style="font-family:宋体">冻结集合简介
3.8.2冻结集合操作
第4章运算符与表达式
4.pan style="font-family:宋体">运算符概述
4.2算术运算符
4.3赋值运算符
4.4比较(关系)运算符
4.5逻辑运算符
4.6位运算符
4.7成员运算符
4.8身份运算符
4.9运算符的优先级
4.pan style="font-family:宋体">字符串的格式化
第5章程序流:条件与循环
5.pan style="font-family:宋体">入门的简单例子Tutorials
5.2条件分支
5.3循环与迭代
5.3.1while循环
5.3.2for循环
5.3.3break跳出循环体
5.3.4 continue 跳出本次循环
5.4with与上下文管理器
5.4.pan style="font-family:宋体">装饰器contextmanager
第6章生成器与迭代器
6.pan style="font-family:宋体">迭代
6.2列表生成式
6.3生成器
6.4迭代器
……
第pan style="font-family:宋体">章pandas基础
19.1 pandas
19.2入门的简单例子Tutorials
19.3 一维数据结构:Series对象
19.4 Series 对象基础操作
19.5 Series对象属
19.6 Series对象方法
19.7 二维数据结构:Dataframe对象
19.8 Dataframe对象基础操作
19.9 Dataframe对象属
19.10 Dataframe对象方法
19.11 pandas主要数据类型和对象
19.12 pandas常用函数
19.13 pandas数据可视化
第20章 matplotlib基础
20.1 matplotlib
20.2入门的简单例子Tutorials
20.3绘图基本概念
20.4两种绘图方式
20.4.pan style="font-family:宋体">基于pyplot模块函数
20.4.2基于Axes对象方法
20.5常见图表绘制
20.5.pan style="font-family:宋体">常用图表概述
20.5.2 饼状图pie
20.5.3柱状图bar和barh
20.5.4 折线图plot
20.5.5 散点图scatter
20.5.6 气泡图scatter
20.5.7 箱线图 boxplot
20.5.8 面积图stackplot
20.5.9统计直方图hist
20.5.10 小提琴图violinplot
20.6常见三维图表绘制
20.6.pan style="font-family:宋体">三维图表概述
20.6.2三维曲线图plot
20.6.3 三维散点图 scatter
20.6.4 三维曲面图plot_surface
20.7绘图的修饰选项
20.8 绘图的Colormap
第2pan style="font-family:宋体">章 statsmodels基础
21.tatsmodels
21.2 statsmodels 模块的类和函数
21.3描述统计与统计绘图
21.4线回归模型与广义线模型
21.5时间序列分析与状态空间模型
第22章 scipy基础
22.cipy
22.2 线代数:scipy.linalg
22.3 概率统计:scipy.stats
22.4 插值:scipy.interpolate
22.5 优化:scipy.optimize
22.6 积分:scipy.integrate
22.7 稀疏矩阵:scipy.sparse
第三部分实践案例
第23章实践案例pan>:金融数据可视化
23.pan style="font-family:宋体">案例背景
23.2编程实现
第24章实践案例2:期权定价模型.
24.pan style="font-family:宋体">案例背景
24.2编程实现
第25章实践案例3:中国期货市场实例
25.pan style="font-family:宋体">定位
25.2简单统计
25.3简单分析
25.4简单绘图
摘要与插图
第pan style="font-family:宋体">章
Python 简介
本章主要了解Python的背景以及Python开发环境的安装,为后续章节的学准备。
1.1 Python基础
1.1.pan style="font-family:宋体">编程语言是什么?
编程语言(programming language)可以简单地理解为一种计算机和人都能识别的语言。一种计算机语言让程序员能够地定义计算机所需要使用的数据,并地定义在不同情况下所应当采取的行动。我们通过编程语言来编写程序代码,再通过语言处理程序执行向计算机发送指令,让计算机完成对应的工作。简单来说,编程语言是人类指挥计算行工作的语言,是人类与计算机沟通的语言。
1.1.2 Python是什么?
Python是编程语言的一种,并且是的编程语言。Python语言可能是种既简单能强大的编程语言。它不仅适合初学者使用,也适合专业人员使用,更加重要的是,用Python编程是一件愉快的事。本书将帮助你学奇妙的语言,并且向你展示如何既快捷又方便地完成任务。
1.1.3 Python的历史
Python的作者是一位荷兰人,名字叫Guido von Rossum。1982年,Guido从阿姆斯特丹大学获得数学和计算机硕士学位。然而,尽管他算得上是一位数学家,但他更加享受计算机带来的乐趣。用他的话来说,尽管拥有数学和计算机双料资质,但趋向于做计算机相关的工作,并热衷于做任何与编程相关的活动。在那个时候,Guido接触并使用过诸如Pascal、C、Fortran等语言。这些语言的基本设计原则是让机器能够更快运行。在20世纪80年代,虽然IBM和苹果已经掀起了个人电脑浪潮,但这些个人电脑的配置很低。比如早期的Macintosh,只有8MHz的CPU主频和128 KB的RAM,一个大的数组能占满内存。所有的编译器的核心是做优化,以便让程序能够运行。为了效率,语言也迫使程序员像计算机一样思考,以便能写出更符合机器口味的程序。在那个时代,程序员恨不得榨取计算机每一滴的能力。有人甚认为C语言的指针是在浪费内存。于动态型、内存自动管理、面向对象……别想了,那会让你的电脑陷入瘫痪。
这种编程方式让Guido感到苦恼。Guido知道如何用C语言写出一能,但整个编写过程需要耗费大量的时间,即使他已经地知道该如何实现。他的另一个选择是shell。Bourne Shell作为UNIX系统的解释器已经存在。UNIX的管理员们常常用shell去写一些简单的脚本,行一些系统维护的工作,比如定期备份、文件系统管理等。shell可以像胶水一样,将UNIX下的许能连接在一起。许多C语言下上百行的程序,在shell下只用几行可以完成。然而,shell的本质是调用命令,它并不是一个真正的语言。比如说,shell没有数值型的数据类型,加法运算都很复杂之,shell不能地调动计算机能。
Guido希望有一种语言,这种语言能够像C语言那样调用计算机能接口,又可以像shell那样轻松编程。ABC语言让Guido看到了希望,ABC语言是由荷兰数学和计算机研究所开发的,以教学为目的。Guido在该研究所工作,并参与了A语言的开发。与当时的大部分语言不同,ABC语言的目标是“让用户感觉更好”。ABC语言希望让语言变得容易阅读、使用、记忆、学以此来激发人们学的兴趣。
199pan style="font-family:宋体">年,个Python编译器诞生了。它是C语言实现的,并能够调用C语言的库文件。从一出生,Python已经具有了:类,函数,异常处理含表和词典在内的核心数据类型,以及模块为基础的拓展系统。Python语法很多来自C,但又受到ABC语言的强烈影响。直到今天,来自ABC语言的一些规定还富有争议,比如强制。但这些语法规定让Python容易读。另一方面,Python聪明地选择服从一些惯例,是C语言的惯例,比如回归等号赋值。Guido认为,在常识上确立的东西,没有必要过度纠结。Python从一开始在意可拓展,Python可以在多个层次上拓展:从高层上,你可以直接引入py文件;在底层,你可以引用C语言的库。Python程序员可以快速地使用Python的.py文件作为拓展模块。但当能是考虑的重要因素时,Python程序员可以深入底层,写C程序,并编译为so文件引入Python中使用。Python好比是用钢构建房一样,先规定好大的框架,而程序员可以在此框架下相当自由地拓展或更改。初的Python由Guido本人开发。Python得到了Guido的同事们的欢迎。他们迅速地反馈使用意见,并参与Python的。Guido和一些同事组成Python的核心团队,他们将自己大部分的业余时间用于hack Python。随后,Python拓展到研究所之外。Python将许多机器层面上的细节隐藏,交给编译器处理,并凸显出逻辑层面的编程思考。Python程序员可以花更多的时间用于思考程序的逻辑,而不是具体的实现细节。这一特征吸引了广大的程序员。Python开始流行。
1.1.4 Python 的优点
(pan style="font-family:宋体">)简单。Python是一种代表简单主义思想的语言。阅读一个良好的Pytlhon程序感觉是在读英语一样,尽管这个英语的要求严格!Python的这种伪代码本质是它大