目录
第一篇基础篇
第1章Python环境2
1.1Python简介2
1.1.1Python的特点2
1.1.2Python的用途3
1.1.3Python的历史3
1.2Python安装升级5
1.2.1Python安装5
1.2.2Python运行8
1.3pip管理工具包8
1.3.1pip命令8
1.3.2离线安装9
1.3.3更换pip源9
1.4Python虚拟环境10
1.4.1基本概念10
1.4.2pipenv特性11
1.4.3pipenv安装11
1.4.4创建虚拟环境12
1.4.5pipenv管理依赖13
1.4.6pipenv安装依赖工具包14
1.4.7常用命令15
1.4.8部署迁移虚拟环境16
1.5本章小结17
第2章PyCharm工具18
2.1PyCharm简介18
2.2配置虚拟开发环境19
2.2.1使用本地虚拟Python环境19
2.2.2使用远程虚拟Python环境20
2.3配置远程开发环境25
2.4PyCharm常用功能27
2.4.1编码设置27
2.4.2分屏查看代码28
2.4.3解释器设置28
2.4.4模板设置29
2.4.5指定运行参数30
2.4.6调试程序31
2.4.7安装依赖工具包32
2.4.8配置PyPI国内源33
2.4.9tab和空格的自动转换33
2.4.10函数注释和参数注释34
2.4.11__name__=='__main__'的作用34
2.4.12设置去除显示的波浪线35
2.4.13可视化操作数据库35
2.5配置Git代码管理仓库36
2.6本章小结37
第3章Python基础38
3.1Python基本数据类型38
3.1.1数值类型38
3.1.2布尔类型38
3.1.3字符串类型39
3.1.4列表类型40
3.1.5元组类型41
3.1.6集合类型41
3.1.7字典类型41
3.1.8字节类型45
3.2面向对象编程46
3.2.1面向对象编程的要素46
3.2.2面向对象编程的特征50
3.2.3设计思想52
3.3面向过程编程53
3.3.1特殊函数54
3.3.2函数的参数56
3.3.3变量的作用域57
3.4import机制59
3.5Python项目打包发布60
3.5.1包的概念61
3.5.2包管理的作用61
3.5.3包管理工具61
3.5.4发布方式62
3.6typing类型提示66
3.6.1typing模块介绍66
3.6.2typing模块的使用66
3.6.3函数注解68
3.6.4参数注解68
3.7本章小结68
第二篇专题篇
第4章常用百宝箱70
4.1自定义异常处理70
4.1.1异常含义70
4.1.2异常处理方法71
4.1.3自定义异常71
4.1.4封装示例73
4.2日志处理75
4.2.1logging库75
4.2.2logging日志等级75
4.2.3logging四大组件76
4.2.4封装示例77
4.3邮件处理79
4.4时间处理83
4.5多线程处理89
4.5.1线程的含义89
4.5.2线程的使用89
4.5.3线程池的使用92
4.5.4高级用法94
4.6Excel处理95
4.6.1基本概念96
4.6.2封装示例99
4.7配置文件处理101
4.7.1yaml基础102
4.7.2PyYAML库103
4.7.3封装示例105
4.8正则表达式处理106
4.8.1常用字符功能106
4.8.2re模块简介107
4.9命令行参数解析110
4.9.1命令行参数含义110
4.9.2命令行参数解析库110
4.10with正确使用114
4.11文件读写处理116
4.11.1基本的语法116
4.11.2文件的读写117
4.11.3文件的关闭118
4.11.4大文件处理118
4.11.5分块下载大文件119
4.12序列化处理120
4.12.1序列化和反序列化方法120
4.12.2pickle库121
4.12.3json库122
4.12.4msgpack库123
4.13本章小结124
第5章高级百宝箱125
5.1消息中间件简介125
5.2Kafka的使用与封装126
5.2.1Kafka简介126
5.2.2使用Kafka128
5.2.3封装示例136
5.3RabbitMQ的使用与封装143
5.3.1RabbitMQ简介143
5.3.2使用RabbitMQ144
5.3.3封装示例147
5.4缓存中间件简介151
5.5MongoDB的使用与封装151
5.5.1MongoDB简介151
5.5.2使用MongoDB153
5.5.3封装示例158
5.6Redis的使用与封装161
5.6.1Redis简介161
5.6.2使用Redis161
5.6.3封装示例164
5.7数据库中间件简介166
5.8MySQL的使用与封装166
5.8.1MySQL简介166
5.8.2使用MySQL167
5.8.3封装示例170
5.9SQLite的使用与封装172
5.9.1SQLite简介173
5.9.2使用SQLite173
5.9.3封装示例176
5.10本章小结181
第6章通用框架182
6.1Web应用框架FastAPI182
6.1.1FastAPI简介182
6.1.2使用FastAPI183
6.1.3封装示例193
6.2异步处理框架Celery196
6.2.1Celery简介196
6.2.2使用Celery198
6.2.3封装示例201
6.3爬虫框架Scrapy209
6.3.1Scrapy简介209
6.3.2使用Scrapy211
6.3.3封装示例216
6.4本章小结220
第三篇实战篇
第7章音频测试工具开发222
7.1需求背景222
7.2涉及知识222
7.2.1MP3文件224
7.2.2WAV文件226
7.3代码解读228
7.4本章小结235
第8章自定义套接字测试工具开发236
8.1需求背景236
8.2涉及知识237
8.2.1socket库237
8.2.2struct库240
8.3代码解读242
8.4本章小结246
第9章接口测试工具开发247
9.1需求背景247
9.2涉及知识249
9.2.1requests库249
9.2.2序列化和反序列化253
9.3代码解读254
9.4本章小结266
第10章数据测试工具开发267
10.1需求背景267
10.2涉及知识267
10.2.1pandas库267
10.2.2pyecharts库270
10.3代码解读271
10.4本章小结278
第11章性能测试工具开发279
11.1需求背景279
11.2涉及知识281
11.2.1Linux概念281
11.2.2subprocess库283
11.3代码解读285
11.4本章小结291
第12章安全测试工具开发292
12.1需求背景292
12.2涉及知识294
12.2.1端口294
12.2.2Nmap295
12.3代码解读297
12.4本章小结300