第1章 初始Python
1.1 程序设计语言 1
1.1.1 程序设计语言的概念 1
1.1.2 编译与解释 2
1.2 Python语言 2
1.2.1 Python的历史 2
1.2.2 Python的特点 3
1.2.3 Python的应用 3
1.3 Python的开发环境 4
1.3.1 下载和安装Python 4
1.3.2 内置的IDLE开发环境 5
1.3.3 PyCharm集成开发环境 6
1.4 Python程序的运行 9
1.4.1 Python程序的运行原理 9
1.4.2 建立和运行Python程序 9
1.5 Python编程方法与应用 11
1.5.1 程序设计方法 11
1.5.2 程序示例 12
1.5.3 Python的帮助文档 15
本章小结 16
习题1 16
第2章 Python基础知识
2.1 程序的书写规范 18
2.1.1 Python的语句 18
2.1.2 代码块与缩进 18
2.1.3 注释 19
2.2 标识符和关键字 20
2.2.1 标识符 20
2.2.2 关键字 20
2.3 Python的数据类型 21
2.4 Python的变量 23
2.5 Python的运算符 24
2.5.1 算术运算符 24
2.5.2 比较运算符 24
2.5.3 逻辑运算符 25
2.5.4 赋值运算符 25
2.5.5 位运算符 25
2.6 运算符的优先级 26
本章小结 27
习题2 27
第3章 Python中的字符串
3.1 字符串的表示 29
3.2 字符串的格式化 30
3.2.1 用%操作符格式化字符串 30
3.2.2 format()方法 31
3.3 字符串的操作符 33
3.4 操作字符串的方法 34
3.5 输入 输出语句 37
3.5.1 输入语句 38
3.5.2 输出语句 38
本章小结 39
习题3 39
第4章 Python程序的流程
4.1 程序设计流程 41
4.1.1 程序流程图 41
4.1.2 结构化程序设计的基本流程 41
4.2 分支结构 42
4.3 循环结构 44
4.3.1 遍历循环:for语句 44
4.3.2 条件循环:while语句 45
4.3.3 循环的嵌套 46
4.4 流程控制的其他语句 47
4.4.1 跳转语句 47
4.4.2 pass语句 48
4.4.3 循环结构中的else语句 48
4.5 流程控制语句的应用 49
本章小结 51
习题4 51
第5章 Python的组合数据类型
5.1 序列类型 55
5.2 列表 56
5.2.1 列表的基本操作 56
5.2.2 列表的方法 57
5.2.3 遍历列表 58
5.2.4 列表推导式 58
5.3 元组 59
5.3.1 元组的基本操作 59
5.3.2 元组与列表的转换 60
5.3.3 生成器推导式* 60
5.3.4 序列解包* 61
5.4 字典 62
5.4.1 字典的基本操作 62
5.4.2 字典的常用方法 63
5.5 集合 66
5.5.1 集合的基本操作 66
5.5.2 集合运算 67
5.6 组合数据类型的应用 68
本章小结 70
习题5 70
第6章 用函数实现代码复用
6.1 函数的定义和调用 73
6.1.1 函数的定义 73
6.1.2 函数的调用 74
6.1.3 函数的嵌套 74
6.2 函数的参数和返回值 75
6.2.1 函数的参数 75
6.2.2 默认参数 77
6.2.3 可变参数 78
6.2.4 函数的返回值 79
6.2.5 lambda函数 80
6.3 闭包和递归函数 81
6.3.1 闭包* 81
6.3.2 递归函数 82
6.4 变量的作用域 83
6.4.1 局部变量 83
6.4.2 全局变量 84
6.4.3 global语句 85
6.5 Python的内置函数 86
6.5.1 数学运算函数 86
6.5.2 字符串运算函数 86
6.5.3 转换函数 87
6.5.4 序列操作函数 87
6.5.5 Python操作相关函数 91
本章小结 92
习题6 93
第7章 用类实现抽象和封装*
7.1 面向对象编程概述 96
7.1.1 面向对象编程的概念 96
7.1.2 面向对象编程的特点 97
7.2 创建类与对象 97
7.2.1 创建类 98
7.2.2 创建对象 98
7.3 构造方法和析构方法 99
7.3.1 构造方法 99
7.3.2 析构方法 100
7.3.3 self参数 101
7.3.4 成员变量和类变量 102
7.3.5 类方法和静态方法 102
7.4 类的继承 105
7.4.1 继承的实现 105
7.4.2 方法重写 107
7.4.3 Python的多继承 108
7.5 类的多态 109
7.6 运算符重载 110
7.7 面向对象编程的应用 113
本章小结 115
习题7 115
第8章 使用模块和库编程
8.1 模块 118
8.1.1 模块的概念 118
8.1.2 导入模块 118
8.1.3 执行模块 119
8.1.4 模块搜索路径 121
8.1.5 __name__属性 122
8.2 包 122
8.3 Python的标准库 123
8.3.1 math库 123
8.3.2 random库 124
8.3.3 datetime库 125
8.4 Python的第三方库 129
8.4.1 第三方库简介 129
8.4.2 pip工具的使用 129
8.4.3 Python常用的第三方库 131
8.4.4 使用pyinstaller库打包文件 132
8.5 turtle库的应用 133
8.6 jieba库的应用 136
8.6.1 jieba库简介 136
8.6.2 jieba库的分词函数 137
8.6.3 添加单词和自定义词典 138
8.6.4 基于TF-IDF算法的关键词抽取 139
8.6.5 中文文本的词频统计 139
8.6.6 使用wordcloud库实现文本数据可视化 143
本章小结 145
习题8 145
第9章 Python的文件操作
9.1 文件的概念 148
9.2 文件的打开与关闭 149
9.3 文件的读 写操作 150
9.3.1 读取文件数据 151
9.3.2 向文件写数据 152
9.3.3 文件的定位读 写 153
9.3.4 读 写二进制文件 154
9.4 文件和目录操作 155
9.4.1 常用的文件操作函数 155
9.4.2 文件的复制、删除及重命名操作 156
9.4.3 文件的目录操作 157
9.5 使用CSV文件格式读 写数据 158
9.5.1 CSV文件介绍 158
9.5.2 读 写CSV文件 158
9.6 文件操作的应用 161
本章小结 164
习题9 164
第10章 异常处理
10.1 异常处理概述 167
10.1.1 异常的概念 167
10.1.2 异常示例 167
10.2 Python的异常类 168
10.3 异常处理机制 171
10.3.1 try…except语句 171
10.3.2 else语句和finally语句 172
10.3.3 捕获所有的异常 173
10.4 抛出异常 174
10.4.1 raise语句 175
10.4.2 抛出异常示例 176
10.5 断言与上下文管理 177
10.5.1 断言 177
10.5.2 上下文管理 178
10.6 自定义异常类 178
本章小结 180
习题10 180
第11章 tkinter GUI编程
11.1 tkinter编程概述 183
11.1.1 第一个tkinter GUI程序 183
11.1.2 设置窗口和组件的属性 184
11.2 tkinter GUI的布局管理 185
11.2.1 使用pack()方法的布局 185
11.2.2 使用grid()方法的布局 186
11.2.3 使用place()方法的布局 187
11.2.4 使用框架的复杂布局 188
11.3 tkinter的常用组件 189
11.3.1 Label组件 189
11.3.2 Button组件 190
11.3.3 Entry组件 191
11.3.4 Listbox组件 193
11.3.5 Radiobutton组件 194
11.3.6 Checkbutton组件 195
11.3.7 Text组件 197
11.3.8 Spinbox组件 198
11.4 tkinter的事件处理 199
11.4.1 使用command参数实现事件处理 199
11.4.2 使用组件的bind()方法实现事件处理 200
11.5 tkinter GUI的应用 201
本章小结 204
习题11 204
第12章 Python的数据库编程
12.1 数据库的基础知识 206
12.1.1 数据库的概念 206
12.1.2 关系型数据库 207
12.2 SQLite数据库 208
12.2.1 SQLite数据库简介 208
12.2.2 下载和安装SQLite数据库 208
12.2.3 SQLite3的常用命令 209
12.2.4 SQLite3的数据类型 209
12.2.5 SQLite3的函数 210
12.2.6 Python的SQLite3模块 211
12.2.7 SQLite3模块中的对象 211
12.2.8 创建SQLite3数据库 212
12.3 关系数据库语言SQL 212
12.3.1 数据表的建立和删除 212
12.3.2 向表中添加列 213
12.3.3 向表中插入数据 213
12.3.4 修改表中的数据 214
12.3.5 删除数据 214
12.3.6 查询数据 214
12.4 Python的SQLite3编程 215
12.4.1 访问数据库的步骤 215
12.4.2 创建数据库和表 217
12.4.3 数据库的插入、更新和删除操作 217
12.5 SQLite编程的应用 218
本章小结 221
习题12 222
第13章 科学计算与图表绘制
13.1 用于科学计算的numpy库 224
13.1.1 numpy简介 224
13.1.2 numpy数组的创建 224
13.1.3 访问numpy数组的元素 226
13.1.4 numpy数组的算术运算 228
13.1.5 numpy数组的形状操作 230
13.2 用于绘制图表的matplotlib库 231
13.2.1 matplotlib简介 231
13.2.2 matplotlib.pyplot模块中的函数 231
13.2.3 绘制直方图、条形图、饼图 235
本章小结 237
习题13 238
第14章 爬取与分析网页中的数据
14.1 爬取网页的urllib和requests库 240
14.1.1 爬取网页的基础知识 240
14.1.2 urllib库 241
14.1.3 requests库 243
14.2 解析网页的beautifulsoup4库 245
14.2.1 beautifulsoup4库概述 245
14.2.2 beautifulsoup4库的对象 246
14.2.3 beautifulsoup4库操作解析文档树 249
14.3 网页爬取技术的应用 253
14.3.1 爬取单一网页页面的信息 253
14.3.2 爬取来自多个页面的信息 255
本章小结 258
习题14 258