Chapter 01 轻松配置Python开发环境 1
1.1 Python编程语言简介 2
1.1.1 Python发展史 2
1.1.2 Python特色 3
1.2 内置的Anaconda开发环境 4
1.2.1 安装Anaconda套件 4
1.2.2 Anaconda Prompt套件 6
1.2.3 在命令窗口运行一个Python程序 9
1.2.4 用Anaconda Prompt建立虚拟环境 9
1.2.5 IPython交互式命令窗口 12
1.3 Spyder编辑器 14
1.3.1 启动Spyder编辑器及文件管理 15
1.3.2 Spyder智能输入 17
1.3.3 程序调试 17
1.4 Jupyter Notebook编辑器 19
1.4.1 启动Jupyter Notebook及建立文件 19
1.4.2 Jupyter Notebook智能输入 20
1.4.3 用Jupyter Notebook运行程序 21
1.4.4 在线运行Python 22
Chapter 02 基本语法与结构控制 23
2.1 变量与数据类型 24
2.1.1 变量 24
2.1.2 变量命名规则 25
2.1.3 数值、布尔与字符串数据类型 26
2.1.4 print及type命令 27
2.1.5 数据类型的转换 29
2.2 表达式 30
2.2.1 input命令 30
2.2.2 算术运算符 31
2.2.3 关系运算符 31
2.2.4 逻辑运算符 32
2.2.5 复合赋值运算符 33
2.3 条件语句 35
2.3.1 程序流程控制 35
2.3.2 单向条件(if...) 35
2.3.3 双向条件语句(if...else) 37
2.3.4 多向条件语句(if...elif...else) 38
2.3.5 条件嵌套 40
chapter 03 循环、数据结构及函数 43
3.1 循环 44
3.1.1 列表(List)结构 44
3.1.2 range函数 45
3.1.3 for循环 46
3.1.4 for循环嵌套 48
3.1.5 break及continue命令 49
3.1.6 for...if...else循环 50
3.1.7 while循环 52
3.2 列表、元组结构及字典结构 53
3.2.1 高级列表操作 54
3.2.2 元组(Tuple) 56
3.2.3 字典(Dict) 58
3.2.4 高级字典操作 59
3.3 函数 62
3.3.1 自定义函数 62
3.3.2 不定参函数 64
3.3.3 变量有效范围 65
3.3.4 系统内置函数 66
3.3.5 导入包 69
Chapter 04 文件处理及SQLite数据库 71
4.1 文件和目录管理 72
4.1.1 os 72
4.1.2 os.path 73
4.1.3 os.walk 75
4.1.4 shutil包 76
4.1.5 glob包 77
4.2 open()打开文件 78
4.2.1 用open()函数打开文件 78
4.2.2 文件操作 81
4.2.3 文件操作的应用 85
4.3 SQLite数据库 91
4.3.1 管理SQLite数据库 91
4.3.2 用SQLite Manager创建SQLite数据库 93
4.3.3 使用sqlite3包 94
4.3.4 用cursor进行数据查询 97
4.3.5 SQLite数据库实战 98
Chapter 05 Web数据抓取与分析 105
5.1 网址解析 106
5.2 网页数据抓取 107
5.2.1 用requests抓取网页源代码 107
5.2.2 搜索指定字符串 108
5.2.3 用正则表达式抓取网页内容 109
5.3 小试网页分析 114
5.3.1 HTML网页结构 114
5.3.2 从网页开发界面查看网页源代码 115
5.3.3 通过鼠标右键查看网页源代码 116
5.3.4 试用BeautifulSoup进行网页抓取与解析 117
5.4 牛刀初试——编写你自己的网络爬虫 121
5.4.1 抓取北京市PM2.5 实时数据 121
5.4.2 爬取指定网站的图片 124
Chapter 04 实现自动网页测试 127
6.1 检查网站数据是否更新 128
6.1.1 用hashlib判别文件是否有过更新 128
6.1.2 用md5检查网站内容是否更新 128
6.1.3 再试牛刀:抓取网络公开数据 129
6.2 通过“任务计划程序”实现自动下载 133
6.3 用Selenium组件实现浏览器操作自动化 137
6.3.1 Selenium组件 138
6.3.2 查找网页元素 140
6.3.3 应用:自动登录网站 142
Chapter 07 绘制图形 145
7.1 Matplotlib组件 146
7.1.1 Matplotlib基本绘图 146
7.1.2 plot方法的参数及图形设置 147
7.1.3 在Matplotlib中显示中文 150
7.1.4 绘制柱状图及饼图 151
7.1.5 实战:爬取我国1990年到2016年GDP数据并绘图显示 154
7.2 Bokeh组件 156
7.2.1 Bokeh基本绘图 156
7.2.2 line方法的参数及图形属性设置 158
7.2.3 散点图 161
7.2.4 实战:用Bokeh绘制我国GDP数据统计图 163
Chapter 08 实战:Word文件操作 167
8.1 用Win32com组件操作Word文件 168
8.1.1 实现新建文件并保存 168
8.1.2 打开文件并显示文件内容 171
8.1.3 设置范围的格式 172
8.1.4 表格处理 174
8.1.5 向Word文件中插入图片 176
8.1.6 自动查找替换Word文件中的指定文字 177
8.2 实战:菜单自动生成器及批处理替换文字 179
8.2.1 实战一:自动生成菜单Word文件 179
8.2.2 实战二:批量替换Word文件中的文字 183
ChaPter 09 实战:PM2.5实时监测显示器 185
9.1 Pandas:强大的数据处理套件 186
9.1.1 创建DataFrame数据 186
9.1.2 读取DataFrame数据 188
9.1.3 DataFrame数据的修改及排序 192
9.1.4 删除DataFrame数据 193
9.1.5 导入数据 194
9.1.6 绘制图形 197
9.2 实战:PM2.5实时监测显示器 198
9.2.1 应用程序总览 198
9.2.2 PM2.5公开数据 199
9.2.3 用户数据接口配置 200
9.2.4 事件处理及函数 202
Chapter 10 实战:人脸识别及验证码图片破解 205
10.1 OpenCV:人脸识别应用 206
10.1.1 用OpenCV读取和显示图形 206
10.1.2 保存图像文件 209
10.1.3 OpenCV基本绘图 210
10.1.4 用OpenCV进行人脸识别 212
10.1.5 抓取脸部图形及保存 215
10.1.6 抓取摄像头视频图像 217
10.1.7 实战:通过人脸识别进行登录 219
10.2 用Tesseract识别验证码 223
10.2.1 简单的OCR-Tesseract包 223
10.2.2 验证码识别的原理 225
10.2.3 实战:验证码破解 227
Chapter 11 实战:Firebase实时数据库应用 231
11.1 Firebase实时数据库 232
11.1.1 Firebase实时数据库简介 232
11.1.2 创建Firebase实时数据库 232
11.1.3 新增Firebase实时数据库资料 234
11.1.4 设置数据库权限 235
11.2 建立Firebase数据库连接 236
11.2.1 使用python-firebase包 236
11.2.2 firebase对象的方法 236
11.3 实战:Firebase版电子词典 245
11.3.1 英汉词典标准版 246
11.3.2 英汉词典进阶版 253
Chapter 12 实战:批量更改文件夹、文件名及文件查找 259
12.1 文件管理应用 260
12.1.1 实战:根据指定的编号保存文件 260
12.1.2 实战:大批文件复制搬移及重新命名 262
12.1.3 实战:找出重复的照片 264
12.1.4 实战:把图片文件改为相同大小 266
12.2 在多个文件中查找指定的字符 268
12.2.1 实战:在多个文本文件中查找 268
12.2.2 实战:在Word文件中查找指定字符 269
Chapter 13 实战:音乐播放器 273
13.1 关于音乐与音乐的播放 274
13.11 使用pygame包 274
13.1.2 mixer对象 274
13.2 音效播放 274
13.2.1 Sound对象 274
13.2.2 实战:制作一个音效播放器 275
13.3 音乐播放 278
13.3.1 music对象 278
13.3.2 实战:制作MP3音乐播放器 278
Chapter 14 实战:Pygame游戏开发 283
14.1 Pygame入门 284
14.1.1 Pygame的基本架构 284
14.1.2 基本绘图 286
14.1.3 加载图片 288
14.1.4 插入文本 290
14.2 Pygame动画——让图片动起来 290
14.2.1 动画处理程序的基本架构 291
14.2.2 水平移动的蓝色球体 291
14.2.3 制作一个可自由移动的蓝色球体 293
14.2.4 角色类(Sprite) 294
14.2.5 碰撞侦测 297
14.2.6 检测键盘事件 299
14.2.7 鼠标事件 301
14.3 实战:俄罗斯方块游戏 303
14.3.1 应用程序总览 303
14.3.2 球体、方块、滑板的角色类 304
14.3.3 自定义方法及主程序 307
Chapter 15 把Python打包成可执行文件 311
15.1 打包前的准备 312
15.1.1 安装Pylnstaller 312
15.1.2 Pylnstaller使用方法 312
15.2 制作.exe可执行文件 313
15.2.1 以onedir方式制作.exe可执行文件 313
15.2.2 实际制作onefile式的.exe文件 314
15.3 把项目打包为可执行文件 314