商品详情
书名:用微课学Python云开发技术应用
定价:59.0
ISBN:9787121413766
作者:无
版次:第1版
出版时间:2021-07
内容提要:
本书包括Python的语言基础(基础部分)和高级应用(提高部分)两方面内容,共14个项目。从Python的起源、发展、特性和优势开始,介绍了Python的安装和配置、数据类型、表达式和用户交互、流程控制、容器数据类型、文件操作及系统交互、函数等语言基础,并且内容由浅入深、循序渐进,逐步引入高级应用,包括面向对象编程、模块和程序打包、异常处理、图形用户界面编程、与数据库交互、网络编程、多线程和多进程、数据分析和数据可视化等。
作者简介:
李力(1982.8—),重庆邮电大学毕业,硕士,重庆电子工程职业学院人工智能与大数据学院云计算与大数据系骨干教师,研究方向为云计算、大数据、虚拟化技术等,具有多年服务器和数据中心运维经验,近几年发表学术论文9篇,主编教材3种。
目录:
项目1 Python概述及安装、配置 1
1.1 任务1 认识Python 1
1.1.1 Python的起源和发展 1
1.1.2 Python的特性和优势 2
1.1.3 Python与云计算 6
1.2 任务2 下载和安装Python 6
1.2.1 Python版本差异 6
1.2.2 Python虚拟机简介 6
1.2.3 Python的下载 7
1.2.4 在Windows环境下安装Python 8
1.2.5 在Windows下配置Python环境 9
1.3 任务3 熟悉开发工具的使用 9
1.3.1 使用交互式解释器 10
1.3.2 使用文本编辑器 10
1.3.3 使用集成开发环境 11
1.3.4 Python增强工具 11
1.4 任务4 获取帮助和查看文档 12
1.4.1 查看特定对象的可用操作 12
1.4.2 文档字符串 12
1.4.3 使用帮助函数 13
1.4.4 使用文档 13
1.5 小结 13
1.6 习题 14
项目2 数据类型、表达式和用户交互 15
2.1 任务1 掌握Python数据类型 15
2.1.1 基本数据类型 15
2.1.2 容器数据类型 16
2.2 任务2 掌握表达式和运算符 17
2.2.1 数学运算符 17
2.2.2 比较运算符 18
2.2.3 赋值运算符 18
2.2.4 位运算符 19
2.2.5 身份运算符 20
2.2.6 逻辑运算符 20
2.2.7 运算符优先级 20
2.3 任务3 了解Python代码的规范性要求 21
2.3.1 合法的变量名 21
2.3.2 转义字符 22
2.3.3 编写注释 22
2.3.4 变量注解 23
2.3.5 行拆分与行拼接 23
2.4 任务4 程序设计:模拟掷骰子 24
2.4.1 初识模块 24
2.4.2 掷骰子的实现 24
2.5 任务5 初步了解Python中的对象 24
2.5.1 工厂函数 25
2.5.2 不可变对象 25
2.5.3 可变对象 25
2.6 任务6 了解Python程序的交互方法 26
2.6.1 input()函数 26
2.6.2 print()函数的一些特性 26
2.6.3 格式化表达式 27
2.6.4 其他相关函数 27
2.6.5 任务:打印员工信息表 28
2.7 小结 28
2.8 习题 29
项目3 流程控制 30
3.1 任务1 了解代码块和程序框图 30
3.1.1 代码块与缩进 30
3.1.2 程序框图 31
3.2 任务2 掌握分支结构 32
3.2.1 单条件分支结构 32
3.2.2 多条件分支结构 33
3.2.3 嵌套的分支结构 34
3.2.4 单句多条件和短路逻辑 35
3.2.5 多个if代码块 35
3.2.6 if语句的三目运算形式 36
3.3 任务3 掌握循环结构 36
3.3.1 while语句 36
3.3.2 子任务:骰子模拟器 38
3.3.3 子任务:输出九九乘法表 38
3.3.4 break语句 39
3.3.5 continue语句 39
3.3.6 循环结构中的else语句 39
3.3.7 pass语句 40
3.4 任务4 掌握高级循环:for循环、列表
推导式及生成器 40
3.4.1 for循环 40
3.4.2 基于for循环的死循环 42
3.4.3 列表推导式 43
3.4.4 生成器 44
3.5 小结 45
3.6 习题 45
项目4 容器数据类型:序列、字典和集合 47
4.1 任务1 了解序列类型 47
4.1.1 容器数据类型简介 47
4.1.2 序列的索引和切片操作 48
4.1.3 序列中的运算符重载 49
4.2 任务2 了解列表和元组 49
4.2.1 列表和元组 49
4.2.2 列表常用方法 50
4.2.3 列表和数据结构 50
4.2.4 可变对象的复制 52
4.2.5 元组 54
4.3 任务3 了解字符串 55
4.3.1 字符串简介 55
4.3.2 字符串常用方法 55
4.3.3 增强的格式化字符串方法 57
4.3.4 方法和函数的链式调用 59
4.3.5 Python代码中的字符编码 60
4.3.6 数据编码 61
4.3.7 子任务:基于控制台的计算器 61
4.4 任务4 了解字典 62
4.4.1 字典简介 62
4.4.2 字典的创建和访问 62
4.4.3 键必须是可哈希的 64
4.4.4 字典相关方法 64
4.4.5 子任务:员工信息系统 65
4.5 任务5 了解集合 66
4.5.1 集合简介 66
4.5.2 可变集合和不可变集合 67
4.6 小结 68
4.7 习题 68
项目5 文件操作及系统交互 70
5.1 任务1 认识文件句柄对象 70
5.1.1 文件的打开 70
5.1.2 文件的读取 71
5.1.3 文件指针操作 72
5.1.4 文件的写入 73
5.1.5 文件的缓冲 73
5.2 任务2 掌握文件和目录的管理 75
5.2.1 文件的复制 75
5.2.2 文件的删除 76
5.2.3 文件的属性获取 76
5.2.4 文件的重命名 78
5.2.5 目录的创建 79
5.2.6 目录的删除 79
5.2.7 与目录有关的其他操作 80
5.2.8 系统命令的执行 80
5.2.9 输入/输出重定向 81
5.2.10 带有参数的源代码脚本执行方式 82
5.2.11 子任务:文本替换程序 82
5.3 任务3 掌握时间和日期的处理 83
5.3.1 时间戳及时间元组 83
5.3.2 格式化时间和日期 84
5.3.3 程序运行时间控制 85
5.3.4 日期的置换 86
5.3.5 日期和时间的差值计算 86
5.4 任务4 了解序列化 87
5.4.1 序列化和反序列化 87
5.4.2 JSON和JSON化 88
5.5 任务5 基于文件存储的用户账户登录
功能 88
5.5.1 程序功能设计 89
5.5.2 程序实现 89
5.6 小结 91
5.7 习题 91
项目6 函数 92
6.1 任务1 掌握函数的定义和调用 92
6.1.1 函数的定义和调用 92
6.1.2 函数对象赋值 94
6.1.3 位置参数 94
6.1.4 关键字参数 95
6.1.5 默认参数 95
6.1.6 可变参数和关键字收集器 97
6.1.7 参数组 98
6.1.8 函数注解 98
6.2 任务2 了解函数的高级特性和功能 99
6.2.1 作用域和名称空间 99
6.2.2 在函数中修改全局变量 100
6.2.3 匿名函数 101
6.2.4 用函数实现生成器 101
6.2.5 子任务:重新实现xreadlines()
方法 103
6.2.6 递归函数 103
6.2.7 函数闭包 105
6.2.8 装饰器 105
6.3 任务3 掌握高阶函数 107
6.3.1 什么是高阶函数 107
6.3.2 map()函数 108
6.3.3 reduce()函数 108
6.3.4 filter()函数 110
6.3.5 sorted()函数 110
6.4 小结 112
6.5 习题 112
项目7 面向对象编程 114
7.1 任务1 了解什么是面向对象编程 114
7.1.1 面向对象思想 114
7.1.2 对象和类 114
7.1.3 封装 115
7.2 任务2 掌握类和实例的语法规则 115
7.2.1 类和对象的创建 116
7.2.2 类的构造方法 116
7.2.3 类方法及self参数 116
7.2.4 类和对象的属性 117
7.3 任务3 链表的实现 117
7.3.1 链表的结构特征 117
7.3.2 链表的创建和初始化 118
7.3.3 链表的信息查询和数据查找 119
7.3.4 为链表添加新节点 119
7.3.5 删除节点 121
7.4 任务4 掌握类的深度定制 121
7.4.1 为对象添加属性和方法 122
7.4.2 静态方法 122
7.4.3 类方法 123
7.4.4 静态属性 123
7.4.5 类属性 124
7.4.6 私有字段 125
7.4.7 私有方法 126
7.4.8 标准类 127
7.4.9 对象的销毁与回收 127
7.5 任务5 掌握类的继承和派生 128
7.5.1 父类和子类 128
7.5.2 继承 128
7.5.3 覆盖方法 129
7.5.4 多重继承 130
7.5.5 钻石问题和经典类 130
7.5.6 新式类的其他特性 131
7.5.7 super类 131
7.6 任务6 了解类的其他特性和功能 132
7.6.1 抽象类和抽象方法 132
7.6.2 动态定义类 133
7.6.3 运算符重载 134
7.6.4 子任务:链表的改进 135
7.7 小结 137
7.8 习题 138
项目8 模块和程序打包 139
8.1 任务1 熟悉模块的概念和用法 139
8.1.1 定义模块 139
8.1.2 导入模块 140
8.1.3 导入和加载 140
8.1.4 模块文件和关键变量 140
8.1.5 模块的别名 141
8.1.6 反射 142
8.2 任务2 熟悉包的概念和用法 143
8.2.1 如何使用包 143
8.2.2 搜索路径与环境变量 144
8.2.3 名称空间 144
8.2.4 虚拟环境 145
8.3 任务3 熟悉标准库的查询和帮助 146
8.3.1 模块的查询 146
8.3.2 拆解轮子 146
8.4 任务4 了解标准库中常用的包和模块 147
8.4.1 Python增强 147
8.4.2 系统互动 148
8.4.3 网络 148
8.5 任务5 模块化程序设计:用户账户
登录(总体设计) 149
8.5.1 设计目标 149
8.5.2 程序结构 149
8.6 任务6 模块:验证码的生成和校验
(实现) 151
8.6.1 什么是验证码 151
8.6.2 随机数和权重设置 151
8.6.3 验证码功能的实现 151
8.7 任务7 模块:创建新账户(实现) 152
8.7.1 创建新账户的关键步骤 152
8.7.2 输入字符时遮盖内容 152
8.7.3 信息加密:hashlib模块 153
8.7.4 创建新账户的实现 154
8.8 任务8 模块:密码核对和锁定检测
(实现) 155
8.8.1 功能设计 155
8.8.2 功能实现 155
8.9 任务9 用户登录系统主程序(实现) 156
8.9.1 用户登录过程中的关键步骤 157
8.9.2 主程序的实现 157
8.10 任务10 程序打包和部署 158
8.10.1 使用Distutils打包 158
8.10.2 使用PyInstaller创建可执行
文件 159
8.11 小结 160
8.12 习题 161
项目9 异常处理 162
9.1 任务1 了解什么是异常 162
9.1.1 异常和错误 162
9.1.2 为什么要使用异常处理机制 163
9.2 任务2 掌握异常的检测和处理 163
9.2.1 常见的异常类型 163
9.2.2 处理异常 164
9.2.3 处理多个异常 165
9.2.4 在单except子句中处理多个异常 166
9.2.5 获取发生异常的原因 166
9.2.6 捕获所有异常 167
9.2.7 else子句 168
9.2.8 finally子句 168
9.2.9 单独的try...finally语句 169
9.3 任务3 掌握处理异常的其他方法 169
9.3.1 主动触发异常:raise语句 169
9.3.2 封装内建函数 170
9.3.3 自定义异常 170
9.3.4 上下文管理:with语句 172
9.3.5 断言:assert语句 173
9.3.6 回溯*近发生的异常 173
9.4 小结 174
9.5 习题 174
项目10 图形用户界面编程 176
10.1 任务1 了解Python GUI编程的基本
概念 176
10.1.1 常用的Python GUI工具介绍 176
10.1.2 wxPython的安装 177
10.1.3 关于帮助 177
10.1.4 GUI程序设计的一般流程 178
10.2 任务2 掌握GUI框架的设计 179
10.2.1 使用wx.Frame创建框架 179
10.2.2 理解应用程序对象的生命周期 180
10.2.3 如何管理wxPython对象的ID号 180
10.2.4 wx.Point和wx.Size 181
10.2.5 创建窗口面板 181
10.2.6 wx.Frame的样式设置 181
10.3 任务3 掌握基本组件的使用 182
10.3.1 静态文本框 183
10.3.2 文本样式设置 184
10.3.3 图片显示 185
10.3.4 文本框 185
10.3.5 按钮和事件驱动 186
10.3.6 验证器 188
10.4 任务4 掌握对话框的使用 189
10.4.1 消息对话框 190
10.4.2 文本输入对话框 191
10.4.3 文件选择器对话框 192
10.5 任务5 掌握菜单栏、工具栏和
状态栏 193
10.5.1 菜单栏 193
10.5.2 工具栏 193
10.5.3 状态栏 194
10.5.4 子任务:编写一个文本编辑器 194
10.6 任务6 了解选择器类组件的使用 200
10.6.1 单选按钮 201
10.6.2 复选框 202
10.6.3 列表框 203
10.6.4 树形控件 204
10.7 任务7 了解其他窗口组件 205
10.7.1 选项卡 205
10.7.2 静态框 205
10.7.3 滚动条 206
10.7.4 滑块 207
10.7.5 微调控制器 208
10.7.6 进度条 209
10.8 任务8 界面管理和设计 210
10.8.1 布局管理器 210
10.8.2 界面生成工具 211
10.9 小结 213
10.10 习题 213
项目11 与数据库交互 214
11.1 任务1 了解数据库的概念 214
11.1.1 关系型数据库 214
11.1.2 结构化查询语言 215
11.1.3 Python数据库API 216
11.1.4 选择要使用的数据库 217
11.2 任务2 熟悉在Python中操作SQLite 217
11.2.1 SQLite简介 217
11.2.2 SQLite的安装和配置 218
11.2.3 sqlite3模块的使用 218
11.2.4 SQLite基础应用:用户账户
信息 219
11.3 任务3 熟悉在Python中操作MySQL 221
11.3.1 MySQL简介 222
11.3.2 MySQL获取和安装 223
11.3.3 MySQL编码设置 224
11.3.4 MySQL常见问题 224
11.3.5 Python中的MySQL驱动 226
11.3.6 mysql-connector/python的使用 226
11.3.7 使用executemany()方法批量
插入数据 227
11.3.8 导入海量数据 228
11.4 小结 231
11.5 习题 231
项目12 网络编程 232
12.1 任务1 了解网络编程基本知识 232
12.1.1 计算机网络层次结构 232
12.1.2 客户端/服务器架构模型 233
12.1.2 套接字 233
12.1.3 面向连接与无连接通信 234
12.2 任务2 掌握基于套接字的网络编程 235
12.2.1 socket模块及socket对象 235
12.2.2 创建TCP服务器 236
12.2.3 创建TCP客户端 237
12.2.4 创建UDP服务器/客户端 238
12.3 任务3 掌握服务器多并发功能的
实现 239
12.3.1 socketserver模块 239
12.3.2 创建支持多并发的服务器 240
12.3.3 通过socketserver模块传输
文件 241
12.4 小结 243
12.5 习题 244
项目13 多线程和多进程 245
13.1 任务1 了解进程和线程的概念 245
13.1.1 多道程序设计和对称多处理 245
13.1.2 进程 246
13.1.3 线程 247
13.2 任务2 掌握Python中的多线程编程 248
13.2.1 threading模块简介 248
13.2.2 守护线程 249
13.2.3 抢占和释放CPU 250
13.3 任务3 了解多线程有关的高级话题 251
13.3.1 线程与队列 251
13.3.2 子任务:生产者-消费者问题 251
13.3.3 线程锁、临界资源和互斥 253
13.3.4 死锁 254
13.3.5 信号量 255
13.3.6 全局解释器锁 256
13.4 任务4 掌握Python中的多进程编程 257
13.4.1 multiprocessing模块简介 257
13.4.2 Process类 258
13.4.3 跨进程全局队列 259
13.4.4 Value和Array类 260
13.4.5 Manager类 261
13.4.6 进程池 261
13.4.7 异步和同步 262
13.4.8 再论多进程和多线程 263
13.5 小结 264
13.6 习题 265
项目14 数据分析 266
14.1 任务1 了解NumPy及NumPy数组 266
14.1.1 NumPy的安装 266
14.1.2 NumPy数组的创建方式及基本
特性 267
14.1.3 NumPy数据类型 268
14.1.4 多维数组及修改形状 270
14.1.5 花式索引 272
14.1.6 数据边界约束 273
14.2 任务2 掌握NumPy中的数学相关
方法 273
14.2.1 特殊数组 273
14.2.2 随机数工具 276
14.2.3 数组的算术操作 277
14.2.4 数学函数 279
14.2.5 NumPy的输入和输出 281
14.3 任务3 掌握Pandas的使用 283
14.3.1 什么是Pandas 283
14.3.2 Series的使用 284
14.3.3 DataFrame的创建和访问 285
14.3.4 数据操作 287
14.3.5 数据计算 289
14.3.6 数据排序 290
14.3.7 数据统计分析 291
14.3.8 数据相关性分析 292
14.4 任务4 了解Matplotlib数据可视化 294
14.4.1 数据可视化的基本概念 294
14.4.2 Matplotlib的基本使用 295
14.4.3 数据图形中的文本设置 298
14.4.4 子绘图区域 299
14.4.5 图表绘制函数 301
14.5 小结 304
14.6 习题 305
定价:59.0
ISBN:9787121413766
作者:无
版次:第1版
出版时间:2021-07
内容提要:
本书包括Python的语言基础(基础部分)和高级应用(提高部分)两方面内容,共14个项目。从Python的起源、发展、特性和优势开始,介绍了Python的安装和配置、数据类型、表达式和用户交互、流程控制、容器数据类型、文件操作及系统交互、函数等语言基础,并且内容由浅入深、循序渐进,逐步引入高级应用,包括面向对象编程、模块和程序打包、异常处理、图形用户界面编程、与数据库交互、网络编程、多线程和多进程、数据分析和数据可视化等。
作者简介:
李力(1982.8—),重庆邮电大学毕业,硕士,重庆电子工程职业学院人工智能与大数据学院云计算与大数据系骨干教师,研究方向为云计算、大数据、虚拟化技术等,具有多年服务器和数据中心运维经验,近几年发表学术论文9篇,主编教材3种。
目录:
项目1 Python概述及安装、配置 1
1.1 任务1 认识Python 1
1.1.1 Python的起源和发展 1
1.1.2 Python的特性和优势 2
1.1.3 Python与云计算 6
1.2 任务2 下载和安装Python 6
1.2.1 Python版本差异 6
1.2.2 Python虚拟机简介 6
1.2.3 Python的下载 7
1.2.4 在Windows环境下安装Python 8
1.2.5 在Windows下配置Python环境 9
1.3 任务3 熟悉开发工具的使用 9
1.3.1 使用交互式解释器 10
1.3.2 使用文本编辑器 10
1.3.3 使用集成开发环境 11
1.3.4 Python增强工具 11
1.4 任务4 获取帮助和查看文档 12
1.4.1 查看特定对象的可用操作 12
1.4.2 文档字符串 12
1.4.3 使用帮助函数 13
1.4.4 使用文档 13
1.5 小结 13
1.6 习题 14
项目2 数据类型、表达式和用户交互 15
2.1 任务1 掌握Python数据类型 15
2.1.1 基本数据类型 15
2.1.2 容器数据类型 16
2.2 任务2 掌握表达式和运算符 17
2.2.1 数学运算符 17
2.2.2 比较运算符 18
2.2.3 赋值运算符 18
2.2.4 位运算符 19
2.2.5 身份运算符 20
2.2.6 逻辑运算符 20
2.2.7 运算符优先级 20
2.3 任务3 了解Python代码的规范性要求 21
2.3.1 合法的变量名 21
2.3.2 转义字符 22
2.3.3 编写注释 22
2.3.4 变量注解 23
2.3.5 行拆分与行拼接 23
2.4 任务4 程序设计:模拟掷骰子 24
2.4.1 初识模块 24
2.4.2 掷骰子的实现 24
2.5 任务5 初步了解Python中的对象 24
2.5.1 工厂函数 25
2.5.2 不可变对象 25
2.5.3 可变对象 25
2.6 任务6 了解Python程序的交互方法 26
2.6.1 input()函数 26
2.6.2 print()函数的一些特性 26
2.6.3 格式化表达式 27
2.6.4 其他相关函数 27
2.6.5 任务:打印员工信息表 28
2.7 小结 28
2.8 习题 29
项目3 流程控制 30
3.1 任务1 了解代码块和程序框图 30
3.1.1 代码块与缩进 30
3.1.2 程序框图 31
3.2 任务2 掌握分支结构 32
3.2.1 单条件分支结构 32
3.2.2 多条件分支结构 33
3.2.3 嵌套的分支结构 34
3.2.4 单句多条件和短路逻辑 35
3.2.5 多个if代码块 35
3.2.6 if语句的三目运算形式 36
3.3 任务3 掌握循环结构 36
3.3.1 while语句 36
3.3.2 子任务:骰子模拟器 38
3.3.3 子任务:输出九九乘法表 38
3.3.4 break语句 39
3.3.5 continue语句 39
3.3.6 循环结构中的else语句 39
3.3.7 pass语句 40
3.4 任务4 掌握高级循环:for循环、列表
推导式及生成器 40
3.4.1 for循环 40
3.4.2 基于for循环的死循环 42
3.4.3 列表推导式 43
3.4.4 生成器 44
3.5 小结 45
3.6 习题 45
项目4 容器数据类型:序列、字典和集合 47
4.1 任务1 了解序列类型 47
4.1.1 容器数据类型简介 47
4.1.2 序列的索引和切片操作 48
4.1.3 序列中的运算符重载 49
4.2 任务2 了解列表和元组 49
4.2.1 列表和元组 49
4.2.2 列表常用方法 50
4.2.3 列表和数据结构 50
4.2.4 可变对象的复制 52
4.2.5 元组 54
4.3 任务3 了解字符串 55
4.3.1 字符串简介 55
4.3.2 字符串常用方法 55
4.3.3 增强的格式化字符串方法 57
4.3.4 方法和函数的链式调用 59
4.3.5 Python代码中的字符编码 60
4.3.6 数据编码 61
4.3.7 子任务:基于控制台的计算器 61
4.4 任务4 了解字典 62
4.4.1 字典简介 62
4.4.2 字典的创建和访问 62
4.4.3 键必须是可哈希的 64
4.4.4 字典相关方法 64
4.4.5 子任务:员工信息系统 65
4.5 任务5 了解集合 66
4.5.1 集合简介 66
4.5.2 可变集合和不可变集合 67
4.6 小结 68
4.7 习题 68
项目5 文件操作及系统交互 70
5.1 任务1 认识文件句柄对象 70
5.1.1 文件的打开 70
5.1.2 文件的读取 71
5.1.3 文件指针操作 72
5.1.4 文件的写入 73
5.1.5 文件的缓冲 73
5.2 任务2 掌握文件和目录的管理 75
5.2.1 文件的复制 75
5.2.2 文件的删除 76
5.2.3 文件的属性获取 76
5.2.4 文件的重命名 78
5.2.5 目录的创建 79
5.2.6 目录的删除 79
5.2.7 与目录有关的其他操作 80
5.2.8 系统命令的执行 80
5.2.9 输入/输出重定向 81
5.2.10 带有参数的源代码脚本执行方式 82
5.2.11 子任务:文本替换程序 82
5.3 任务3 掌握时间和日期的处理 83
5.3.1 时间戳及时间元组 83
5.3.2 格式化时间和日期 84
5.3.3 程序运行时间控制 85
5.3.4 日期的置换 86
5.3.5 日期和时间的差值计算 86
5.4 任务4 了解序列化 87
5.4.1 序列化和反序列化 87
5.4.2 JSON和JSON化 88
5.5 任务5 基于文件存储的用户账户登录
功能 88
5.5.1 程序功能设计 89
5.5.2 程序实现 89
5.6 小结 91
5.7 习题 91
项目6 函数 92
6.1 任务1 掌握函数的定义和调用 92
6.1.1 函数的定义和调用 92
6.1.2 函数对象赋值 94
6.1.3 位置参数 94
6.1.4 关键字参数 95
6.1.5 默认参数 95
6.1.6 可变参数和关键字收集器 97
6.1.7 参数组 98
6.1.8 函数注解 98
6.2 任务2 了解函数的高级特性和功能 99
6.2.1 作用域和名称空间 99
6.2.2 在函数中修改全局变量 100
6.2.3 匿名函数 101
6.2.4 用函数实现生成器 101
6.2.5 子任务:重新实现xreadlines()
方法 103
6.2.6 递归函数 103
6.2.7 函数闭包 105
6.2.8 装饰器 105
6.3 任务3 掌握高阶函数 107
6.3.1 什么是高阶函数 107
6.3.2 map()函数 108
6.3.3 reduce()函数 108
6.3.4 filter()函数 110
6.3.5 sorted()函数 110
6.4 小结 112
6.5 习题 112
项目7 面向对象编程 114
7.1 任务1 了解什么是面向对象编程 114
7.1.1 面向对象思想 114
7.1.2 对象和类 114
7.1.3 封装 115
7.2 任务2 掌握类和实例的语法规则 115
7.2.1 类和对象的创建 116
7.2.2 类的构造方法 116
7.2.3 类方法及self参数 116
7.2.4 类和对象的属性 117
7.3 任务3 链表的实现 117
7.3.1 链表的结构特征 117
7.3.2 链表的创建和初始化 118
7.3.3 链表的信息查询和数据查找 119
7.3.4 为链表添加新节点 119
7.3.5 删除节点 121
7.4 任务4 掌握类的深度定制 121
7.4.1 为对象添加属性和方法 122
7.4.2 静态方法 122
7.4.3 类方法 123
7.4.4 静态属性 123
7.4.5 类属性 124
7.4.6 私有字段 125
7.4.7 私有方法 126
7.4.8 标准类 127
7.4.9 对象的销毁与回收 127
7.5 任务5 掌握类的继承和派生 128
7.5.1 父类和子类 128
7.5.2 继承 128
7.5.3 覆盖方法 129
7.5.4 多重继承 130
7.5.5 钻石问题和经典类 130
7.5.6 新式类的其他特性 131
7.5.7 super类 131
7.6 任务6 了解类的其他特性和功能 132
7.6.1 抽象类和抽象方法 132
7.6.2 动态定义类 133
7.6.3 运算符重载 134
7.6.4 子任务:链表的改进 135
7.7 小结 137
7.8 习题 138
项目8 模块和程序打包 139
8.1 任务1 熟悉模块的概念和用法 139
8.1.1 定义模块 139
8.1.2 导入模块 140
8.1.3 导入和加载 140
8.1.4 模块文件和关键变量 140
8.1.5 模块的别名 141
8.1.6 反射 142
8.2 任务2 熟悉包的概念和用法 143
8.2.1 如何使用包 143
8.2.2 搜索路径与环境变量 144
8.2.3 名称空间 144
8.2.4 虚拟环境 145
8.3 任务3 熟悉标准库的查询和帮助 146
8.3.1 模块的查询 146
8.3.2 拆解轮子 146
8.4 任务4 了解标准库中常用的包和模块 147
8.4.1 Python增强 147
8.4.2 系统互动 148
8.4.3 网络 148
8.5 任务5 模块化程序设计:用户账户
登录(总体设计) 149
8.5.1 设计目标 149
8.5.2 程序结构 149
8.6 任务6 模块:验证码的生成和校验
(实现) 151
8.6.1 什么是验证码 151
8.6.2 随机数和权重设置 151
8.6.3 验证码功能的实现 151
8.7 任务7 模块:创建新账户(实现) 152
8.7.1 创建新账户的关键步骤 152
8.7.2 输入字符时遮盖内容 152
8.7.3 信息加密:hashlib模块 153
8.7.4 创建新账户的实现 154
8.8 任务8 模块:密码核对和锁定检测
(实现) 155
8.8.1 功能设计 155
8.8.2 功能实现 155
8.9 任务9 用户登录系统主程序(实现) 156
8.9.1 用户登录过程中的关键步骤 157
8.9.2 主程序的实现 157
8.10 任务10 程序打包和部署 158
8.10.1 使用Distutils打包 158
8.10.2 使用PyInstaller创建可执行
文件 159
8.11 小结 160
8.12 习题 161
项目9 异常处理 162
9.1 任务1 了解什么是异常 162
9.1.1 异常和错误 162
9.1.2 为什么要使用异常处理机制 163
9.2 任务2 掌握异常的检测和处理 163
9.2.1 常见的异常类型 163
9.2.2 处理异常 164
9.2.3 处理多个异常 165
9.2.4 在单except子句中处理多个异常 166
9.2.5 获取发生异常的原因 166
9.2.6 捕获所有异常 167
9.2.7 else子句 168
9.2.8 finally子句 168
9.2.9 单独的try...finally语句 169
9.3 任务3 掌握处理异常的其他方法 169
9.3.1 主动触发异常:raise语句 169
9.3.2 封装内建函数 170
9.3.3 自定义异常 170
9.3.4 上下文管理:with语句 172
9.3.5 断言:assert语句 173
9.3.6 回溯*近发生的异常 173
9.4 小结 174
9.5 习题 174
项目10 图形用户界面编程 176
10.1 任务1 了解Python GUI编程的基本
概念 176
10.1.1 常用的Python GUI工具介绍 176
10.1.2 wxPython的安装 177
10.1.3 关于帮助 177
10.1.4 GUI程序设计的一般流程 178
10.2 任务2 掌握GUI框架的设计 179
10.2.1 使用wx.Frame创建框架 179
10.2.2 理解应用程序对象的生命周期 180
10.2.3 如何管理wxPython对象的ID号 180
10.2.4 wx.Point和wx.Size 181
10.2.5 创建窗口面板 181
10.2.6 wx.Frame的样式设置 181
10.3 任务3 掌握基本组件的使用 182
10.3.1 静态文本框 183
10.3.2 文本样式设置 184
10.3.3 图片显示 185
10.3.4 文本框 185
10.3.5 按钮和事件驱动 186
10.3.6 验证器 188
10.4 任务4 掌握对话框的使用 189
10.4.1 消息对话框 190
10.4.2 文本输入对话框 191
10.4.3 文件选择器对话框 192
10.5 任务5 掌握菜单栏、工具栏和
状态栏 193
10.5.1 菜单栏 193
10.5.2 工具栏 193
10.5.3 状态栏 194
10.5.4 子任务:编写一个文本编辑器 194
10.6 任务6 了解选择器类组件的使用 200
10.6.1 单选按钮 201
10.6.2 复选框 202
10.6.3 列表框 203
10.6.4 树形控件 204
10.7 任务7 了解其他窗口组件 205
10.7.1 选项卡 205
10.7.2 静态框 205
10.7.3 滚动条 206
10.7.4 滑块 207
10.7.5 微调控制器 208
10.7.6 进度条 209
10.8 任务8 界面管理和设计 210
10.8.1 布局管理器 210
10.8.2 界面生成工具 211
10.9 小结 213
10.10 习题 213
项目11 与数据库交互 214
11.1 任务1 了解数据库的概念 214
11.1.1 关系型数据库 214
11.1.2 结构化查询语言 215
11.1.3 Python数据库API 216
11.1.4 选择要使用的数据库 217
11.2 任务2 熟悉在Python中操作SQLite 217
11.2.1 SQLite简介 217
11.2.2 SQLite的安装和配置 218
11.2.3 sqlite3模块的使用 218
11.2.4 SQLite基础应用:用户账户
信息 219
11.3 任务3 熟悉在Python中操作MySQL 221
11.3.1 MySQL简介 222
11.3.2 MySQL获取和安装 223
11.3.3 MySQL编码设置 224
11.3.4 MySQL常见问题 224
11.3.5 Python中的MySQL驱动 226
11.3.6 mysql-connector/python的使用 226
11.3.7 使用executemany()方法批量
插入数据 227
11.3.8 导入海量数据 228
11.4 小结 231
11.5 习题 231
项目12 网络编程 232
12.1 任务1 了解网络编程基本知识 232
12.1.1 计算机网络层次结构 232
12.1.2 客户端/服务器架构模型 233
12.1.2 套接字 233
12.1.3 面向连接与无连接通信 234
12.2 任务2 掌握基于套接字的网络编程 235
12.2.1 socket模块及socket对象 235
12.2.2 创建TCP服务器 236
12.2.3 创建TCP客户端 237
12.2.4 创建UDP服务器/客户端 238
12.3 任务3 掌握服务器多并发功能的
实现 239
12.3.1 socketserver模块 239
12.3.2 创建支持多并发的服务器 240
12.3.3 通过socketserver模块传输
文件 241
12.4 小结 243
12.5 习题 244
项目13 多线程和多进程 245
13.1 任务1 了解进程和线程的概念 245
13.1.1 多道程序设计和对称多处理 245
13.1.2 进程 246
13.1.3 线程 247
13.2 任务2 掌握Python中的多线程编程 248
13.2.1 threading模块简介 248
13.2.2 守护线程 249
13.2.3 抢占和释放CPU 250
13.3 任务3 了解多线程有关的高级话题 251
13.3.1 线程与队列 251
13.3.2 子任务:生产者-消费者问题 251
13.3.3 线程锁、临界资源和互斥 253
13.3.4 死锁 254
13.3.5 信号量 255
13.3.6 全局解释器锁 256
13.4 任务4 掌握Python中的多进程编程 257
13.4.1 multiprocessing模块简介 257
13.4.2 Process类 258
13.4.3 跨进程全局队列 259
13.4.4 Value和Array类 260
13.4.5 Manager类 261
13.4.6 进程池 261
13.4.7 异步和同步 262
13.4.8 再论多进程和多线程 263
13.5 小结 264
13.6 习题 265
项目14 数据分析 266
14.1 任务1 了解NumPy及NumPy数组 266
14.1.1 NumPy的安装 266
14.1.2 NumPy数组的创建方式及基本
特性 267
14.1.3 NumPy数据类型 268
14.1.4 多维数组及修改形状 270
14.1.5 花式索引 272
14.1.6 数据边界约束 273
14.2 任务2 掌握NumPy中的数学相关
方法 273
14.2.1 特殊数组 273
14.2.2 随机数工具 276
14.2.3 数组的算术操作 277
14.2.4 数学函数 279
14.2.5 NumPy的输入和输出 281
14.3 任务3 掌握Pandas的使用 283
14.3.1 什么是Pandas 283
14.3.2 Series的使用 284
14.3.3 DataFrame的创建和访问 285
14.3.4 数据操作 287
14.3.5 数据计算 289
14.3.6 数据排序 290
14.3.7 数据统计分析 291
14.3.8 数据相关性分析 292
14.4 任务4 了解Matplotlib数据可视化 294
14.4.1 数据可视化的基本概念 294
14.4.2 Matplotlib的基本使用 295
14.4.3 数据图形中的文本设置 298
14.4.4 子绘图区域 299
14.4.5 图表绘制函数 301
14.5 小结 304
14.6 习题 305
- 电子工业出版社有限公司
- 电子工业出版社有限公司有赞官方供货商,为客户提供一流的知识产品及服务。
- 扫描二维码,访问我们的微信店铺