目录
第1章Python概述/1
1.1引言1
1.1.1问题导入1
1.1.2知识结构导图1
1.2程序设计语言与程序1
1.2.1机器语言2
1.2.2汇编语言3
1.2.3高级语言3
1.3Python程序设计语言概述4
1.3.1Python简介4
1.3.2Python的前世今生4
1.4Python编程环境搭建5
1.4.1下载和安装Python5
1.4.2Python安装目录介绍6
1.5开启Python编程11
1.5.1Windows下Python代码的编写和运行11
1.5.2PyCharm集成开发环境14
1.6Python程序的运行过程17
1.7Python在线帮助和相关资源19
1.8本章小结19
1.9习题20
第2章Python基本语法/21
2.1引言21
2.1.1问题导入21
2.1.2知识结构导图21
2.2对象22
2.3标识符23
2.4变量和常量23
2.4.1变量23
2.4.2常量24
2.5数据类型25
2.5.1整型25
2.5.2浮点型26
2.5.3复数类型27
2.5.4字符串类型27
2.5.5空值28
2.6数据类型转换28
2.7算术运算符与算术表达式29
2.8复合赋值运算符29
2.9标准输入和输出30
2.9.1标准输入函数30
2.9.2标准输出函数31
2.10fstring表达式31
2.11程序设计方法IPO34
2.12程序错误35
2.12.1语法错误35
2.12.2运行时错误35
2.12.3逻辑错误36
2.12.4异常处理36
2.13应用案例研讨38
2.13.1计算三角形的周长38
2.13.2计算平均年龄39
2.13.3求整数各位数字之和39
2.14本章小结40
2.15习题40
第3章字符串/43
3.1引言43
3.1.1问题导入43
3.1.2知识结构导图43
3.2字符编码和字符串44
3.2.1字符编码44
3.2.2字符串45
3.2.3转义字符46
3.3字符串内置函数47
3.3.1ord()和chr()函数47
3.3.2len()函数48
3.3.3max()和min()函数49
3.4访问字符串中的元素49
3.4.1字符串的索引49
3.4.2访问字符串中的单个字符49
3.4.3访问字符串中的子字符串50
3.5字符串运算50
3.5.1字符串连接运算50
3.5.2字符串复制运算51
3.5.3判断子串51
3.5.4字符串比较51
3.6字符串方法52
3.6.1测试字符串中子串的方法52
3.6.2搜索字符串中子串的方法53
3.6.3格式化字符串的方法54
3.6.4操作字符串的方法55
3.7应用案例研讨57
3.7.1计算速度57
3.7.2文件夹路径分割57
3.7.3定制贺卡58
3.8本章小结58
3.9习题59
第4章选择结构/62
4.1引言62
4.1.1问题导入62
4.1.2知识结构导图62
4.2布尔值63
4.3比较运算符与表达式63
4.4逻辑运算符与表达式65
4.5运算符的优先级和结合方向65
4.6三种选择结构67
4.6.1单分支结构67
4.6.2双分支结构69
4.6.3多分支结构70
4.7嵌套if语句72
4.8matchcase语句74
4.9条件表达式76
4.10pass语句77
4.11应用案例研讨77
4.11.1闰年判断问题77
4.11.2自动生成减法算式问题79
4.11.3月份天数问题81
4.12本章小结83
4.13习题83
第5章循环结构/87
5.1引言87
5.1.1问题导入87
5.1.2知识结构导图87
5.2while循环88
5.2.1while循环初探88
5.2.2使用while生成5个算式89
5.3循环设计策略90
5.3.1猜数字90
5.3.2循环设计策略概述92
5.3.3生成多个减法算式93
5.3.4根据用户确认控制循环94
5.3.5使用哨兵值控制循环95
5.4for循环96
5.4.1for循环的基本语法96
5.4.2使用for循环打印三角形图案97
5.5循环控制关键字98
5.5.1break和continue98
5.5.2使用break98
5.5.3使用continue99
5.6循环附带的else语句101
5.7嵌套循环102
5.8应用案例研讨105
5.8.1求斐波那契数列105
5.8.2寻找素数107
5.8.3模拟计算圆周率108
5.9本章小结109
5.10习题109
第6章函数/112
6.1引言112
6.1.1问题导入112
6.1.2知识结构导图112
6.2Python函数概述113
6.2.1函数的作用113
6.2.2函数的分类114
6.3自定义函数115
6.3.1自定义函数的定义115
6.3.2函数的调用116
6.3.3函数的参数和返回值116
6.4函数参数的类型117
6.4.1位置参数117
6.4.2关键字参数118
6.4.3默认参数119
6.4.4可变位置参数120
6.4.5可变关键字参数122
6.5变量作用域123
6.5.1局部变量124
6.5.2全局变量124
6.6递归126
6.6.1递归的基本概念126
6.6.2阶乘的递归求解126
6.6.3斐波那契数列的递归求解127
6.7匿名函数128
6.7.1匿名函数的创建128
6.7.2匿名函数的使用129
6.8自定义模块和包129
6.8.1自定义模块130
6.8.2包131
6.9应用案例研讨133
6.9.1最大公约数133
6.9.2输出n个素数134
6.9.3月日历136
6.10本章小结141
6.11习题142
第7章列表/145
7.1引言145
7.1.1问题导入145
7.1.2知识结构导图145
7.2创建列表146
7.2.1使用方括号[]创建列表146
7.2.2使用list类创建列表146
7.2.3使用列表生成式创建列表147
7.3访问列表148
7.3.1索引148
7.3.2访问列表中某一个元素148
7.3.3遍历列表中所有元素149
7.3.4列表切片150
7.4列表方法150
7.4.1添加列表元素151
7.4.2删除列表元素151
7.4.3排序列表元素153
7.4.4微实例: 求一组数据中的最小值及其序号154
7.5列表运算符155
7.6字符串和列表155
7.6.1将字符串转换为列表155
7.6.2将各列表元素合起来变成一个长字符串156
7.7复制列表156
7.8比较列表157
7.9嵌套列表158
7.10应用案例研讨159
7.10.1统计字符个数159
7.10.2第一代身份证号升级为第二代身份证号161
7.10.3模拟微信抢红包162
7.10.4学生测试成绩评分165
7.11本章小结167
7.12习题168
第8章字典、元组和集合/172
8.1引言172
8.1.1问题导入172
8.1.2知识结构导图172
8.2字典173
8.2.1键值对173
8.2.2字典的创建173
8.2.3字典的操作175
8.2.4字典相等性检测176
8.2.5字典方法177
8.2.6字典生成式179
8.3字典应用案例研讨180
8.3.1微信通讯录180
8.3.2统计小写字母的出现次数182
8.3.3用户登录和用户注册184
8.4元组186
8.4.1元组的创建187
8.4.2元组的操作187
8.5集合188
8.5.1集合的创建188
8.5.2集合的操作189
8.5.3集合的运算190
8.5.4集合间的关系191
8.5.5集合生成式191
8.6元组和集合应用案例研讨192
8.6.1维纳年龄192
8.6.2电影院票务系统193
8.7本章小结194
8.8习题195
第9章数据文件/198
9.1引言198
9.1.1问题导入198
9.1.2知识结构导图198
9.2数据文件概述199
9.2.1文件类型199
9.2.2文件路径199
9.2.3读写文件的基本流程200
9.3文件读写基础200
9.3.1打开一个文件200
9.3.2读数据201
9.3.3写入数据203
9.3.4测试文件的存在性204
9.3.5文件指针205
9.3.6文件关闭和立刻写入206
9.3.7with语句206
9.4os库207
9.4.1进程管理207
9.4.2获取和改变环境参数208
9.4.3路径管理209
9.5常见文本文件格式及应用实例210
9.5.1TXT文件210
9.5.2CSV文件211
9.6本章小结213
9.7习题214
第10章面向对象程序设计/216
10.1引言216
10.1.1问题导入216
10.1.2知识结构导图216
10.2面向对象程序设计范式217
10.2.1对象217
10.2.2类217
10.2.3实例化217
10.2.4属性和方法218
10.3Python类219
10.3.1创建类219
10.3.2创建对象220
10.3.3属性221
10.3.4方法225
10.3.5方法重载228
10.4成员私有化229
10.4.1私有属性229
10.4.2私有方法231
10.5面向对象的三大特性232
10.5.1封装232
10.5.2继承232
10.5.3多态237
10.6object类238
10.7应用案例研讨240
10.8本章小结243
10.9习题243
第11章Pandas数据分析/247
11.1引言247
11.1.1问题导入247
11.1.2知识结构导图247
11.2NumPy的数值计算与矩阵操作248
11.2.1ndarray对象的常用属性248
11.2.2创建ndarray对象249
11.2.3NumPy的数组类型转换250
11.2.4数组输出251
11.2.5数组运算251
11.3Pandas数据分析基础254
11.3.1Pandas数据结构254
11.3.2Pandas索引操作260
11.3.3Pandas数据抽取264
11.3.4Pandas数据编辑265
11.3.5Pandas数据排序267
11.3.6Pandas数据汇总与统计269
11.3.7Pandas数据分组与聚合271
11.4Pandas数据处理273
11.4.1数据读取与导出273
11.4.2数据合并275
11.4.3数据清洗278
11.4.4数据标准化283
11.5本章小结283
11.6习题284
第12章Matplotlib数据可视化/288
12.1引言288
12.1.1问题导入288
12.1.2知识结构导图288
12.2数据可视化概述289
12.2.1数据可视化的作用289
12.2.2数据可视化工具简介289
12.2.3数据可视化的基本过程290
12.3Matplotlib入门291
12.3.1Matplotlib概述291
12.3.2图形和坐标系292
12.3.3Matplotlib绘图基本流程293
12.4绘制图形296
12.4.1常用绘图概述296
12.4.2折线图297
12.4.3散点图300
12.4.4气泡图302
12.4.5条形图304
12.4.6雷达图305
12.4.7直方图307
12.4.8饼图309
12.5多图形和多坐标系310
12.5.1绘制多图形310
12.5.2绘制多坐标系312
12.6本章小结315
12.7习题315
第13章数据处理与分析实战/317
13.1引言317
13.1.1问题导入317
13.1.2知识结构导图317
13.2Jupyter Notebook开发环境318
13.2.1Jupyter Notebook简介318
13.2.2安装Jupyter Notebook318
13.2.3Jupyter Notebook的基本操作319
13.3数据处理与分析基本流程322
13.3.1明确问题和数据获取323
13.3.2数据清洗324
13.3.3数据探索性分析329
13.3.4数据转换与特征工程340
13.3.5数据建模与评估343
13.3.6数据可视化345
13.3.7结果解释与报告347
13.4本章小结348
13.5习题348
参考文献/350
