当前位置:主页 > 书籍配套资源 > Python编程配套资源
《精通Python自动化编程》源代码

《精通Python自动化编程》源代码

  • 更新:2022-01-06
  • 大小:4.6 MB
  • 类别:Python编程
  • 作者:黄永祥
  • 出版:机械工业出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

本书由一线Python开发工程师精心编写,循序渐进地介绍Python自动化编程的相关知识,全书共20章,第1~14章讲解Python编程基础知识,第15章介绍关系型数据库SQLite和MySQL、非关系型数据库MongoDB和Redis、ORM框架SQLAlchemy的应用,第16~20章分别介绍Selenium实现网页自动化、Requests实现网页爬虫编程、办公自动化编程、OpenCV实现图像识别与定位、Web系统的开发与部署。

本书理论与实践相结合,案例丰富,非常适合从零开始学习自动化编程的读者学习。

封面图

目录

  • 前言
  • 第1章 构建开发环境 . 1
  • 1.1 Python的发展历程 . 1
  • 1.2 Python的应用场景 . 2
  • 1.3 安装Python . 3
  • 1.3.1 在Windows下安装Python 3.8 . 3
  • 1.3.2 在Linux下安装Python 3.8  6
  • 1.4 PyCharm的安装与使用 . 7
  • 1.4.1 安装PyCharm  7
  • 1.4.2 运行PyCharm  9
  • 1.4.3 创建项目  10
  • 1.4.4 编写并运行HelloWorld项目 . 12
  • 1.4.5 设置PyCharm开发环境 . 13
  • 1.5 实战项目:复读机 . 15
  • 1.6 本章小结  17
  • 第2章 基础语法  18
  • 2.1 关键字与标识符 . 18
  • 2.1.1 关键字 . 18
  • 2.1.2 标识符 . 19
  • 2.2 变量  21
  • 2.2.1 变量的定义与使用  21
  • 2.2.2 变量的深拷贝和浅拷贝  23
  • 2.3 运算符的使用 . 26
  • 2.3.1 算术运算符  26
  • 2.3.2 比较运算符  27
  • 2.3.3 赋值运算符  28
  • 2.3.4 逻辑运算符  29
  • 2.3.5 位运算符  30
  • 2.3.6 成员运算符  31
  • 2.3.7 身份运算符  31
  • 2.3.8 运算符的优先级  32
  • 2.4 编码规范  33
  • 2.4.1 代码注释  33
  • 2.4.2 模块与包  34
  • 2.4.3 编码缩进  36
  • 2.5 实战项目:猜数字游戏 . 37
  • 2.6 本章小结  39
  • 第3章 数据类型  40
  • 3.1 数字类型  40
  • 3.1.1 整型数据的进制与转换  40
  • 3.1.2 浮点数的精度处理  43
  • 3.1.3 布尔型数据的逻辑运算  44
  • 3.1.4 复数的使用与运算  45
  • 3.2 字符串类型 . 45
  • 3.2.1 定义与使用 . 46
  • 3.2.2 格式化操作  48
  • 3.2.3 使用运算符  52
  • 3.2.4 大小写转换:capitalize()  53
  • 3.2.5 大写转小写:lower() . 54
  • 3.2.6 小写转大写:upper() . 55
  • 3.2.7 大小写切换:swapcase() . 56
  • 3.2.8 查找索引:find() . 57
  • 3.2.9 查找索引:index() . 57
  • 3.2.10 序列拼接字符串:join() 58
  • 3.2.11 分隔字符串:split() . 59
  • 3.2.12 单个替换:replace()  60
  • 3.2.13 类型检测:isalnum()、isalpha()和isdigit()  61
  • 3.3 实战项目:客服热线 . 62
  • 3.4 本章小结 . 64
  • 第4章 元组和列表  67
  • 4.1 序列的操作 . 67
  • 4.1.1 索引的正负值  67
  • 4.1.2 元素截取操作  69
  • 4.1.3 相加与相乘  71
  • 4.1.4 检测元素是否存在  73
  • 4.2 元组的操作 . 75
  • 4.2.1 基本操作  76
  • 4.2.2 计算长度:len() . 77
  • 4.2.3 最大值和最小值:max()和min() . 78
  • 4.2.4 累加求和:sum() . 79
  • 4.2.5 格式转换:tuple()  79
  • 4.2.6 查找索引:index() . 80
  • 4.2.7 计算出现次数:count() . 81
  • 4.3 列表的操作 . 81
  • 4.3.1 基本操作  82
  • 4.3.2 新增元素:append()  84
  • 4.3.3 插入元素:insert() . 84
  • 4.3.4 新增多个元素:extend() . 85
  • 4.3.5 移除元素:pop()  86
  • 4.3.6 移除元素:remove()  87
  • 4.3.7 列表反转:reverse()  88
  • 4.3.8 列表排序:sort()与sorted()  88
  • 4.3.9 清空列表:clear()  90
  • 4.3.10 复制列表:copy()  91
  • 4.3.11 格式转换:list() . 92
  • 4.4 实战项目:“营救村民”游戏 . 93
  • 4.5 本章小结 . 97
  • 第5章 集合和字典  99
  • 5.1 集合的创建与操作 . 99
  • 5.1.1 添加元素:add()和update()  100
  • 5.1.2 删除元素:pop()、remove()和discard()  101
  • 5.1.3 获取两个集合的交集:intersection() . 102
  • 5.1.4 获取两个集合的并集:union() . 103
  • 5.1.5 获取两个集合的差集:difference()  104
  • 5.1.6 判断子集:issubset()和issuperset()  105
  • 5.1.7 格式转换:set() . 106
  • 5.2 字典的创建与操作 . 107
  • 5.2.1 基本操作  107
  • 5.2.2 获取键值:get()和setdefault()  109
  • 5.2.3 删除键值对:pop()和popitem() . 110
  • 5.2.4 获取所有键:keys()  111
  • 5.2.5 获取所有值:values() . 112
  • 5.2.6 获取所有键值:items() . 112
  • 5.2.7 更新字典:update() . 113
  • 5.2.8 格式转换:dict()  113
  • 5.3 实战项目:社交功能“好友推荐” . 114
  • 5.4 本章小结  116
  • 第6章 流程控制语句  117
  • 6.1 条件判断  117
  • 6.1.1 if语句 . 117
  • 6.1.2 if嵌套 . 119
  • 6.2 循环遍历 . 120
  • 6.2.1 for循环 . 120
  • 6.2.2 while循环  122
  • 6.2.3 终止循环:break . 123
  • 6.2.4 跳过本次循环:continue . 124
  • 6.2.5 空语句:pass . 125
  • 6.3 三目运算符  126
  • 6.4 推导式 . 127
  • 6.5 实战项目:个人健康评测 . 130
  • 6.6 本章小结 . 132
  • 第7章 函数  134
  • 7.1 内置函数 . 134
  • 7.2 自定义函数 . 137
  • 7.3 函数参数 . 139
  • 7.3.1 形参与实参  139
  • 7.3.2 必选参数  140
  • 7.3.3 默认参数  141
  • 7.3.4 关键字参数  143
  • 7.3.5 可变参数  144
  • 7.3.6 设置数据类型  147
  • 7.4 函数返回值  148
  • 7.5 函数调用过程 . 150
  • 7.6 变量的作用域 . 151
  • 7.7 递归函数 . 152
  • 7.8 匿名函数 . 155
  • 7.9 偏函数 . 157
  • 7.10 实战项目:排序算法 . 158
  • 7.10.1 冒泡排序  158
  • 7.10.2 选择排序  159
  • 7.10.3 插入排序  160
  • 7.10.4 希尔排序  161
  • 7.10.5 归并排序  162
  • 7.11 本章小结  163
  • 第8章 面向对象编程  166
  • 8.1 对象与类  166
  • 8.2 类的自定义与使用 . 167
  • 8.2.1 类的定义  167
  • 8.2.2 类的内置属性和方法  168
  • 8.2.3 静态方法、类方法和实例方法  170
  • 8.2.4 类的property属性 . 172
  • 8.2.5 类的实例化与使用  173
  • 8.2.6 动态添加类的属性和方法  176
  • 8.2.7 内置属性:__slots__ . 178
  • 8.3 类的封装 . 179
  • 8.4 类的继承 . 180
  • 8.5 内置函数:super()  183
  • 8.6 类的多态 . 186
  • 8.7 动态创建类  188
  • 8.8 创建类的类:元类 . 189
  • 8.9 实战项目:家庭游戏 . 191
  • 8.10 本章小结  194
  • 第9章 高级特性 . 196
  • 9.1 迭代器 . 196
  • 9.1.1 认识迭代器  196
  • 9.1.2 自定义迭代器  198
  • 9.1.3 迭代器的作用与扩展  199
  • 9.2 生成器 . 200
  • 9.3 装饰器 . 202
  • 9.3.1 无参数的函数装饰器  202
  • 9.3.2 带参数的函数装饰器  206
  • 9.3.3 使用类定义装饰器  207
  • 9.3.4 装饰器在类中的应用  209
  • 9.4 实战项目:工厂模式 . 210
  • 9.5 本章小结  211
  • 第10章 异常机制 . 212
  • 10.1 异常的类型  212
  • 10.2 捕捉异常  215
  • 10.3 自定义异常  217
  • 10.4 异常的追踪术 . 218
  • 10.5 实战项目:狼人游戏 . 221
  • 10.6 本章小结  222
  • 第11章 模块与包 . 224
  • 11.1 模块的导入与使用 . 224
  • 11.2 包的导入与使用 . 225
  • 11.3 导入方式from…import…  226
  • 11.4 重命名模块与包 . 227
  • 11.5 自定义模块与包 . 228
  • 11.6 重新加载模块与包 . 228
  • 11.7 动态添加模块与包 . 230
  • 11.8 打包模块与包 . 232
  • 11.9 安装第三方模块与包 . 235
  • 11.10 实战项目:可扩展的答题系统 . 237
  • 11.11 本章小结 . 238
  • 第12章 日期与时间  240
  • 12.1 日期与时间的类型 . 240
  • 12.2 calendar模块  243
  • 12.3 time模块  248
  • 12.4 datetime模块  250
  • 12.5 实战项目:限时支付 . 261
  • 12.6 本章小结  262
  • 第13章 文件处理 . 264
  • 13.1 使用os模块处理文件与目录  264
  • 13.2 使用open()读写TXT文件  267
  • 13.3 使用configparser读写配置文件 . 270
  • 13.4 使用csv读写CSV文件  273
  • 13.5 使用xlrd和xlwt读写Excel文件 . 275
  • 13.6 使用python-docx读写Word文件  278
  • 13.7 实战项目:多文件读写功能 . 280
  • 13.8 本章小结 . 282
  • 第14章 进程、线程与协程 . 285
  • 14.1 为什么会有GIL  285
  • 14.2 进程、线程与协程的区别 . 286
  • 14.3 使用多线程 . 287
  • 14.3.1 使用线程  288
  • 14.3.2 守护线程  289
  • 14.3.3 等待线程结束  290
  • 14.3.4 多线程共享全局变量  291
  • 14.3.5 互斥锁  291
  • 14.3.6 信号量  292
  • 14.3.7 线程事件  293
  • 14.4 基于进程的并行 . 294
  • 14.4.1 守护进程  295
  • 14.4.2 等待进程结束  296
  • 14.4.3 互斥锁  297
  • 14.4.4 通信和共享数据  297
  • 14.4.5 信号量  298
  • 14.4.6 进程事件  299
  • 14.4.7 进程池  300
  • 14.5 使用concurrent.futures执行并行任务  303
  • 14.5.1 获取任务的执行结果  304
  • 14.5.2 设置回调函数  305
  • 14.5.3 取消任务  306
  • 14.5.4 处理异常  307
  • 14.6 协程的应用  308
  • 14.6.1 yield与yield from  308
  • 14.6.2 异步并发asyncio与async/await  311
  • 14.7 实战项目:生产者和消费者模式 . 313
  • 14.8 本章小结  315
  • 第15章 数据库编程  317
  • 15.1 SQLite的应用 . 317
  • 15.1.1 连接并创建数据表  318
  • 15.1.2 新增数据  319
  • 15.1.3 更新数据  319
  • 15.1.4 删除数据  320
  • 15.1.5 查询数据  321
  • 15.2 MySQL的应用 . 322
  • 15.2.1 MySQL的安装与使用  322
  • 15.2.2 连接并创建数据表  324
  • 15.2.3 新增数据  325
  • 15.2.4 更新数据  326
  • 15.2.5 删除数据  327
  • 15.2.6 查询数据  328
  • 15.3 MongoDB的应用 . 329
  • 15.3.1 MongoDB的安装与使用  330
  • 15.3.2 连接MongoDB  332
  • 15.3.3 新增文档  333
  • 15.3.4 更新文档  335
  • 15.3.5 删除文档  336
  • 15.3.6 查询文档  337
  • 15.4 Redis的应用  340
  • 15.4.1 Redis的安装与使用  341
  • 15.4.2 连接Redis  342
  • 15.4.3 新增数据  343
  • 15.4.4 更新数据  345
  • 15.4.5 删除数据  347
  • 15.4.6 查询数据  349
  • 15.5 ORM框架SQLAlchemy  351
  • 15.5.1 SQLAlchemy框架的概述与安装 . 352
  • 15.5.2 连接数据库  352
  • 15.5.3 创建数据表  354
  • 15.5.4 新增数据  356
  • 15.5.5 更新数据  357
  • 15.5.6 删除数据  359
  • 15.5.7 查询数据  360
  • 15.6 实战项目:多数据库读写功能 . 362
  • 15.7 本章小结  367
  • 第16章 使用Selenium实现网页操作自动化 . 370
  • 16.1 了解Selenium . 370
  • 16.2 安装Selenium . 371
  • 16.3 使用浏览器查找元素 . 374
  • 16.4 使用Selenium定位元素  377
  • 16.5 使用Selenium操控元素  380
  • 16.6 Selenium常用功能 . 384
  • 16.7 实战项目:百度登录与答题 . 391
  • 16.8 本章小结  397
  • 第17章 使用Requests实现自动爬取网页数据 . 398
  • 17.1 分析网站接口 . 398
  • 17.2 Requests的安装  401
  • 17.3 简单的请求方式 . 401
  • 17.4 复杂的请求方式 . 403
  • 17.5 文件下载与上传 . 406
  • 17.6 实战项目:12306车次查询  407
  • 17.7 本章小结  411
  • 第18章 办公自动化编程. 413
  • 18.1 使用PyAutoGUI模拟人工操作  413
  • 18.1.1 PyAutoGUI概述及安装  413
  • 18.1.2 截图与识别  414
  • 18.1.3 鼠标控制功能  417
  • 18.1.4 键盘控制功能  418
  • 18.1.5 消息框功能  420
  • 18.1.6 实战项目:百度自动登录  421
  • 18.2 实现软件的自动化操作 . 424
  • 18.2.1 PyWinAuto概述及安装  424
  • 18.2.2 查找软件信息  425
  • 18.2.3 连接CS软件 . 428
  • 18.2.4 基于uia的软件操控 . 431
  • 18.2.5 基于Win32的软件操控 . 435
  • 18.2.6 从源码剖析PyWinAuto  438
  • 18.2.7 实战项目:自动撰写新闻稿  439
  • 18.3 本章小结  446
  • 第19章 使用OpenCV实现图像识别与定位  449
  • 19.1 OpenCV概述及安装  449
  • 19.2 图像特征点检测算法 . 450
  • 19.3 图像匹配与定位 . 454
  • 19.4 实战项目:自动打印PDF文件  459
  • 19.5 本章小结  464
  • 第20章 自动化Web系统的开发与部署 . 466
  • 20.1 用Flask快速实现一个网站 . 466
  • 20.1.1 概述与安装  466
  • 20.1.2 快速实现一个简单的网站系统  467
  • 20.1.3 路由编写规则  468
  • 20.1.4 请求参数  469
  • 20.1.5 响应过程  470
  • 20.2 任务系统的开发与部署 . 472
  • 20.2.1 系统设计概述  472
  • 20.2.2 搭建开发环境  474
  • 20.2.3 任务调度系统  477
  • 20.2.4 任务执行系统  486
  • 20.2.5 系统上线部署  490
  • 20.3 本章小结 . 494

资源下载

资源下载地址1:https://pan.baidu.com/s/1WhKTrXnBwu_IF3E5oALEtg

相关资源

网友留言