- ISBN:9787115579638
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:16开
- 页数:266
- 出版时间:2022-02-01
- 条形码:9787115579638 ; 978-7-115-57963-8
本书特色
1.本书采用“案例螺旋升级”驱动“知识螺旋升级”的编写模式,易于读者循序渐进地升级项目案例难度的同时升级知识的深度。 2.本书重构Python知识体系,清除知识盲点,帮助读者扫清Python前进道路上可能遇到的障碍。同时,绘制了百余张图片,深入解析晦涩难懂的理论知识。 3.配套资源丰富且完善。本书配套的资源包括Python安装程序(32位和64位两个版本)、二进制查看器、Python官方文档、Bottle官方文档、PPT电子课件、每个章节的源代码、项目案例源代码、电子教案、教学进度表、非笔试考核方案等。
内容简介
本书采用“案例螺旋升级”驱动“知识螺旋升级”的编写模式,针对同一案例,由浅入深地讲解了10种实现方法,巩固读者所学知识,帮助读者在实践中体会知识的价值。全书共16章,内容涵盖基本数据类型、自定义函数、控制语句、自定义模块和导入语句等Python基础知识,面向对象编程、文件管理、路径管理、序列化和持久化等Python中级知识,Web开发、数据库开发等Python不错知识,字符编码、BOM等拓展知识。 本书内容丰富、讲解深入,可作为普通高等学校计算机专业相关课程的教材,也可作为广大Python开发爱好者的自学参考书。
目录
第 1 章 Python 概述 13
1.1Python 简介 13
1.2Python 的特点 14
1.3Python 解释器(Python Interpreter) 15
1.4安装 Python 解释器 15
上机实践 1:安装 Python 解释器和配置 Path 环境变量 15
场景 1:安装 Python 解释器(Python Interpreter) 15
场景 2:手工配置 Path 环境变量 18
上机实践 2:交互模式下运行 Python 代码 19
场景 1:通过 cmd 命令窗口启动 Python Shell 19
场景 2:Python Shell 与 Python 解释器的交互 20
场景 3:理解交互模式的特点 20
场景 4:退出 Python Shell(两种方法) 21
上机实践 3:运行 Python 程序(采用直接方式) 21
场景 1:准备工作 21
场景 2:使用记事本程序编写 Python 程序 22
场景 3:采用直接方式运行 Python 程序 22
场景 4:修改 Python 解释器解析 Python 程序的字符编码 23
场景 5:将文本文件中文本的字符编码修改为 UTF-8 24
场景 6:Python 解释器使用 GBK 码解析 UTF-8 编码的程序 25
场景 7:Python 解释器使用 UTF-8 码解析 GBK 编码的程序 25
上机实践 4:运行 Python 程序(采用间接方式) 25
上机实践 5:利用自省功能自学 Python 27
场景 1:查看 Python 会话上定义的所有对象 28
场景 2:查看对象的数据类型(交互模式下) 28
场景 3:查看对象的属性和方法 28
场景 4:查看对象的帮助信息 29
场景 5:查看 builtins 的相关信息 30
第 2 章 标识符和对象名 33
2.1标识符 33
2.1.1标识符的命名规则 33
2.1.2单下划线标识符“_”的妙用 33
2.2Python 内存优化机制 33
2.3对象名的管理 33
2.3.1使用赋值语句为对象命名 34
2.3.2使用 del 语句删除对象名 34
2.4对象和对象名间的关系总结 34
上机实践 1:认识保留字(也叫关键字) 35
场景 1:查看 Python 的保留字 35
场景 2:理解 sys.path 和 import 语句的关系 36
场景 3:修改 sys.path 的值(第 1 种方法) 37
场景 4:修改 sys.path 的值(第 2 种方法) 37
上机实践 2:理解 Python 的内存优化机制 37
场景 1:通过对象的内存地址理解 Python 的内存优化机制 1 37
场景 2:通过对象的内存地址理解 Python 的内存优化机制 2 38
上机实践 3:对象名的管理 39
场景 1:理解赋值语句的执行流程 39
场景 2:其他格式的赋值语句 40
场景 3:使用 del 语句删除对象名 40
第 3 章 初识内置数据类型 42
3.1常用的内置数据类型 42
3.2数字、布尔型数据和 None 42
3.2.1 数字 42
3.2.2布尔型数据(bool) 42
3.2.3None 42
3.3字符串 str 43
3.3.1字符串的特点 43
3.3.2转义字符 43
3.3.3字符串的索引操作 43
3.3.4字符串的切片操作 44
3.3.5格式化字符串 44
3.4元组 tuple 44
3.5列表 list 44
3.6集合 set 44
3.7字典 dict 45
3.8对象的拷贝 45
上机实践 1:认识数字、布尔型数据和 None 45
场景 1:认识整数 int 和浮点数 float 45
场景 2:认识布尔型数据 46
场景 3:None 对象的数据类型是 NoneType 46
上机实践 2:认识字符串 46
场景 1:认识字符串 str 46
场景 2:了解单行注释和多行注释的区别 47
场景 3:认识转义字符 47
场景 4:字符串的索引操作 48
场景 5:字符串的切片操作 48
场景 6:字符串不可变更 51
场景 7:格式化字符串 51
上机实践 3:认识元组 tuple 51
场景 1:普通元组、空元组和单元素元组 51
场景 2:元组的索引和切片 51
场景 3:元组不可变更 52
上机实践 4:认识列表 list 52
场景 1:普通列表、空列表 52
场景 2:列表的索引和切片 53
场景 3:列表可变更 53
上机实践 5:认识集合 set 53
场景 1:集合内的元素不可重复、无先后顺序 54
场景 2:空集合对象的创建 54
场景 3:集合内的元素不可变更 54
场景 4:集合的长度可变更 54
上机实践 6:认识字典 dict 54
场景 1:字典内元素的“键”不可重复 54
场景 2:字典内元素的“键”不可变更 54
场景 3:空字典对象的创建 54
场景 4:字典是可变更的 55
上机实践 7:对象的拷贝 55
场景 1:使用赋值语句“=”拷贝对象 55
场景 2:浅拷贝(借助切片实现) 56
场景 3:浅拷贝(借助 copy 模块的 copy 函数实现) 58
场景 4:深拷贝 58
上机实践 8:理解“Python 中一切皆对象” 59
第 4 章 运算符和数据类型转换 61
4.1运算符 61
4.1.1算术运算符 61
4.1.2比较运算符 61
4.1.3赋值运算符 61
4.1.4逻辑运算符 62
4.1.5成员运算符 62
4.1.6对象比较运算符 is 62
4.1.7条件运算符 62
4.2类型转换的必要性 62
4.3理解 True 和“真”、False 和“假” 63
4.4精简代码的技巧 63
上机实践 1:运算符 63
上机实践 2:显式类型转换的必要性 66
上机实践 3:常用的类型转换函数 67
上机实践 4:逻辑运算符 69
第 5 章 自定义函数 70
5.1代码块 70
5.2自定义函数的语法格式 71
5.3函数的生命周期 71
5.4命名空间(namespace) 71
5.4.1命名空间概述 72
5.4.2内部函数 72
5.4.3命名空间的 LEGB 规则 72
5.6形式参数 parameter 和实际参数 argument 73
5.7return 语句 73
5.8lambda 表达式 74
5.9组包和解包 74
5.10参数是可变更对象时的注意事项 74
上机实践 1:理解函数的生命周期 74
上机实践 2:理解命名空间 77
上机实践 3:理解形式参数 parameter 和实际参数 argument 82
上机实践 4:理解 return 语句 84
上机实践 5:使用 lambda 表达式创建匿名函数对象 85
上机实践 6:理解组包和解包 85
上机实践 7:参数是可变更对象时的注意事项 88
第 6 章 控制语句 91
6.1if 语句 91
6.1.1不包含 else 子句的 if 语句 91
6.1.2包含 else 子句的 if 语句 91
6.1.3包含 elif 子句的 if 语句 92
6.2循环语句 92
6.2.1while 循环语句 92
6.2.2for 循环语句 93
6.2.3使用循环语句的建议 93
6.3其他控制语句 93
6.4强行终止程序的执行 94
6.5异常的处理 94
6.5.1常见的内置异常类型 95
6.5.2异常处理程序的完整语法格式 95
6.6控制语句中定义的对象名具有向外穿透性 96
上机实践 1:if 语句 96
上机实践 2:不包含 else 子句的 while 循环语句 98
上机实践 3:不包含 else 子句的 for 循环语句 100
上机实践 4:其他控制语句的使用 102
上机实践 5:强行终止程序的执行 105
上机实践 6:异常的处理 107
第 7 章 自定义模块和导入语句 112
7.1模块概述 112
7.1.1自定义模块 112
7.1.2Python 包的必要性 112
7.2sys.path 的第 1 个元素的两种取值 113
7.3import 语句的 5 种常见用法 114
7.4模块的主次之分 114
7.4.1模块的 name 属性 114
7.4.2 主模块 114
7.4.3非主模块 114
7.4.4模块名和模块的 name 属性值间的关系 115
7.4.5模块的 name 属性在测试中的作用 115
7.5主程序存放位置的建议 115
7.6 总结 116
7.6.1import 语句总结 116
7.6.2Python 程序与 Python 模块间的关系总结 117
上机实践 1:认识自定义模块 117
上机实践 2: init .py 程序的作用 118
上机实践 3:import 语句的第 3 种用法 122
上机实践 4:import 语句的第 4 种和第 5 种用法 124
上机实践 5:Python 程序存在主模块和非主模块两种身份 125
上机实践 6:模块的 name 属性在测试中的作用 127
上机实践 7:主程序建议存放在项目根目录下 130
第 8 章 项目实战:学生管理系统的实现(列表和字典篇) 133
8.1元组对象 133
8.2集合对象 133
8.3列表对象 133
8.4字典对象 134
上机实践 1:元组的应用 134
上机实践 2:集合的应用 134
上机实践 3:列表的应用 136
上机实践 4:字典的应用 141
第 9 章 项目实战:字符串的处理与格式化 146
9.1字符串的处理 146
9.2字符串的格式化 147
上机实践 1:准备工作 147
上机实践 2:字符串的处理 148
上机实践 3:字符串的格式化 149
上机实践 4:字符串的处理(综合) 151
第 10 章 为什么面向对象编程 154
10.1从认知现实世界的角度理解面向对象编程 154
10.1.1人类认知现实世界的过程 154
10.1.2计算机管理现实世界的过程 154
10.2从避免代码冗余的角度理解面向对象编程 155
10.2.1结构化编程 155
10.2.2面向对象编程 156
10.2.3理解类和对象之间的关系 157
10.3理解需求的重要性 158
10.4知识汇总 158
10.4.1现实世界 VS 计算机世界知识汇总 158
10.4.2结构化编程 VS 面向对象编程知识汇总 158
第 11 章 面向对象编程基础知识 161
11.1定义类的语法格式 161
11.2类的定义、模板对象和实例化对象间的关系 161
11.2.1类的定义、模板对象和实例化对象间的关系 161
11.2.2函数和方法的关系 162
11.2.3查看模板对象和实例化对象的内部结构 162
11.2.4访问模板对象和实例化对象的内部结构 162
11.3构造方法的构成 163
11.3.1 new 方法的语法格式 163
11.3.2 init 方法的语法格式 163
11.4对象的属性和方法 163
11.4.1实例属性和实例方法 163
11.4.2类方法和静态方法 163
11.4.3 类属性 164
11.5方法的链式调用 164
11.6 小结 164
上机实践 1:类的定义、模板对象和实例化对象间的关系 166
上机实践 2:构造方法、实例属性和实例方法 173
上机实践 3:类方法和静态方法 177
上机实践 4:类属性的应用 181
上机实践 5:方法的链式调用 182
第 12 章 文件管理和路径管理 184
12.1文件、目录和路径 184
12.1.1文件管理概述 184
12.1.2文件的分类 184
12.1.3文本文件的分类 184
12.1.4目录和路径 184
12.1.5保证路径和相对路径 185
12.1.6路径管理概述 186
12.2文件管理 186
12.2.1理解打开文件 186
12.2.2理解读文件和写文件 187
12.2.3理解刷新文件 188
12.2.4理解关闭文件 188
12.3文件管理知识汇总 188
12.4使用 pathlib 管理文件路径 189
上机实践 1:文件管理和路径管理基础知识 189
上机实践 2:以“写”模式打开文本文件 190
上机实践 3:以“读”模式打开文本文件 195
上机实践 4:追加模式和排他写模式 198
上机实践 5:关闭文件的正确方法 198
上机实践 6:pathlib 模块的 Path 类的使用 201
第 13 章 项目实战:学生管理系统的实现(JSON、CSV 和 pickle 篇) 208
13.1序列化和持久化 208
13.2json 模块的使用 208
13.2.1JSON 内置的数据类型 209
13.2.2json 模块的序列化和持久化方法 209
13.2.3内存中的对象和 JSON 文本数据相互转换 210
13.3csv 模块的使用 210
13.3.1列表对象 CSV 文本文件 211
13.3.2字典对象 CSV 文本文件 212
13.4pickle 模块的使用 213
13.5 总结 213
上机实践 1:json 模块的使用 213
上机实践 2:csv 模块的使用 223
上机实践 3:pickle 模块的使用 234
第 14 章 项目实战:学生管理系统的实现(Web 篇) 238
14.1Web 开发概述 238
14.2Bottle 概述 238
14.3初识 FORM 表单 239
14.3.1表单标签 239
14.3.2表单控件 239
14.3.3表单按钮 240
上机实践 1:初识 Bottle 和认识 GET 请求 241
上机实践 2:认识 POST 请求 244
上机实践 3:Bottle 内置模板引擎的使用 247
上机实践 4:学生管理系统的实现(Web 篇) 250
第 15 章 项目实战:学生管理系统的实现(数据库篇) 257
15.1SQLite 概述 257
15.2数据库和数据库表 257
15.3SQLite 数据类型 257
15.4创建数据库表结构 258
15.5表记录的操作 258
上机实践 1:使用 sqlite3 模块操作 SQLite 数据库 259
上机实践 2:基于 Web 学生管理系统的实现(数据库篇) 265
第 16 章 拓展知识 269
16.1认识字符和字符编码 269
16.1.1十进制数和二进制数 269
16.1.2ASCII 编码表和 ASCII 字符集 269
16.1.3十六进制数 270
16.1.4字符编码表 270
16.1.5 字符集 270
16.1.6Unicode 编码表 271
16.1.7实现 Unicode 编码表的字符集 271
16.1.8UTF-8 流行的原因 272
16.1.9Python 字符串弃用 UTF-8 的原因 272
16.1.10理解字符编码和字符解码 273
16.2使用 IDLE 开发 Python 程序 281
16.3可迭代对象和迭代器对象 284
16.4生成器函数和生成器对象 288
16.5pip 包管理工具的使用 290
16.6Python 中的标点符号 293
16.7os 模块和 pathlib 模块的对比 295
作者简介
孔祥盛,副教授,精通Java、JavaScript、PHP、Python等编程语言,熟悉Web开发、爬虫、自动化测试、数据分析与数据挖掘、数据可视化、数据库等技术,擅长将抽象的理论知识具体化、生活化,善于将综合知识融会贯通于项目案例,主编教材《PHP基础与实例教程》 印次20余次,并获河南省普通高等教育“十四五”规划教材立项、河南省很好教材二等奖,主编教材《MySQL数据库基础与实例教程》印次近20次。
-
深度学习的数学
¥43.5¥69.0 -
全图解零基础word excel ppt 应用教程
¥19.0¥48.0 -
机器学习
¥59.4¥108.0 -
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥31.9¥65.0 -
硅谷之火-人与计算机的未来
¥12.7¥39.8 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥76.3¥109.0 -
UG NX 12.0数控编程
¥22.1¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
基于3D打印技术的产品创新设计方法
¥45.8¥88.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥83.3¥119.0 -
Visual Basic 语言程序设计基础(第6版)
¥32.0¥45.0