Python是近年来流行的编程语言之一,简洁的语法和卓越的可读性使其成为初学者的完美编程语言,并且深受编程人员的喜爱和追捧。本书以Python 3.9为开发环境,从入门者的角度出发,以简洁、通俗易懂的语言逐步展开Python语言教学。全书共分为12章,主要内容包括Python环境搭建、数字类型与字符串、流程控制、列表与元组、集合和字典、函数、类与对象、模块、文件与文件路径操作、错误和异常、正则表达式以及图形用户界面编程。本书配有大量典型的实例,读者可以边学边练,巩固所学知识,并在实践中提升实际开发能力。本书提供完善的学习资源和支持服务,包括电子教案(PPT)、案例素材、源代码、各章上机练习与课后作业参考答案、教学设计、教学大纲等配套资源,为开发者带来全方位的学习体验。本书适合作为高等院校计算机相关专业及其他工科专业的Python程序设计课程教材,也可作为Python培训教材,还可作为编程人员及自学者的辅助教材或自学参考书。
石毅,拥有多年软件开发从业与教育培训经验,熟悉Java开发企业级应用、Android应用开发、Web前端设计,负责Java软件开发方向课程教学工作,主讲Java、HTML、CSS、JavaScript、jQuery、MySQL、SQL Server、Oracle 数据库、JavaWEB开发、SSM框架、SSH框架、微服务开发等课程。常受邀到各大高校担任软件开发相关课程教学,教学风格幽默风趣、工作态度认真负责、深受广大学生喜欢。
第1章 初识Python 1
1.1 Python语言概述 2
1.1.1 Python语言的发展历史 2
1.1.2 Python语言的特点 2
1.1.3 Python的版本 4
1.1.4 Python语言的应用领域 6
1.2 搭建Python开发环境 7
1.2.1 Python的安装 7
1.2.2 IDLE的使用 11
1.2.3 集成开发环境PyCharm的安装与使用 12
1.3 快速开发Python程序 19
1.3.1 开发个Python程序:模拟游戏币充值 19
1.3.2 变量和常量 19
1.3.3 基本输入/输出 22
1.3.4 良好的编程约定 23
1.3.5 技能训练 24
1.4 Python程序执行原理 25
1.4.1 运行hello_world.py时发生的情况 25
1.4.2 Python的文件类型 25
1.4.3 Python是一种解释型语言 26
1.4.4 技能训练 26
第2章 Python基础语法 29
2.1 数字类型 29
2.1.1 数字类型的表示方法 29
2.1.2 技能训练1 31
2.1.3 类型转换函数 31
2.1.4 技能训练2 34
2.2 字符串 34
2.2.1 字符串的定义 34
2.2.2 字符串的格式化输出 36
2.2.3 字符串的常见操作 39
2.2.4 字符串的索引与切片 44
2.2.5 技能训练 46
2.3 运算符 47
2.3.1 算术运算符 47
2.3.2 比较运算符 48
2.3.3 赋值运算符 49
2.3.4 逻辑运算符 50
2.3.5 位运算符 51
2.3.6 运算符优先级 52
2.3.7 技能训练 53
第3章 流程控制 56
3.1 结构化程序设计 56
3.2 条件语句 57
3.2.1 一个简单示例 57
3.2.2 条件测试 58
3.2.3 if 语句 61
3.2.4 if...else语句 62
3.2.5 if...elif...else语句 64
3.2.6 技能训练 66
3.3 条件语句嵌套 67
3.3.1 if语句嵌套 67
3.3.2 技能训练 68
3.4 循环语句 69
3.4.1 for循环 69
3.4.2 技能训练1 70
3.4.3 while循环 71
3.4.4 技能训练2 75
3.5 循环语句嵌套 76
3.5.1 while循环嵌套 76
3.5.2 for循环嵌套 77
3.5.3 技能训练 78
3.6 Python的其他语句 78
3.6.1 break语句 78
3.6.2 continue语句 80
3.6.3 pass语句 81
3.6.4 else语句 81
3.6.5 技能训练 82
第4章 列表和元组 84
4.1 认识列表 84
4.1.1 什么是列表 84
4.1.2 列表的创建方式 85
4.1.3 访问列表元素 85
4.1.4 列表的常用方法 87
4.1.5 技能训练 87
4.2 列表的遍历、排序和查找 88
4.2.1 列表的遍历 88
4.2.2 列表的排序 89
4.2.3 列表的查找 90
4.2.4 技能训练 91
4.3 添加、删除和修改列表元素 92
4.3.1 在列表中添加元素 92
4.3.2 修改列表元素 93
4.3.3 删除列表元素 94
4.3.4 技能训练 95
4.4 嵌套列表 95
4.4.1 嵌套列表的创建与访问 96
4.4.2 技能训练 97
4.5 认识元组 97
4.5.1 元组的创建方式 97
4.5.2 访问元组元素 98
4.5.3 元组的遍历 99
4.5.4 修改元组变量 100
4.5.5 技能训练 101
第5章 字典与集合 104
5.1 认识字典 104
5.1.1 一个简单的字典 104
5.1.2 字典的创建方式 105
5.1.3 通过键访问字典 107
5.1.4 技能训练 107
5.2 字典的基本操作 108
5.2.1 字典元素的添加和修改 108
5.2.2 字典元素的删除 109
5.2.3 字典元素的查询 110
5.2.4 技能训练 112
5.3 嵌套字典 113
5.3.1 字典列表 113
5.3.2 在字典中存储列表 115
5.3.3 在字典中存储字典 116
5.3.4 技能训练 117
5.4 认识集合 117
5.4.1 集合的创建方式 117
5.4.2 集合元素的添加、删除和清空 118
5.4.3 集合类型的操作符 119
5.4.4 技能训练 121
5.5 列表、元组、字典和集合的比较 121
第6章 函数 124
6.1 定义函数 124
6.1.1 向函数传递信息 125
6.1.2 实参和形参 126
6.1.3 技能训练 126
6.2 函数的参数传递 126
6.2.1 位置实参 126
6.2.2 关键字实参 128
6.2.3 默认值 129
6.2.4 等效的函数调用 130
6.2.5 不定长参数 131
6.2.6 避免实参错误 131
6.2.7 技能训练 132
6.3 变量作用域 132
6.3.1 局部变量 132
6.3.2 全局变量 133
6.3.3 技能训练 134
6.4 返回值 135
6.4.1 返回简单值 135
6.4.2 让实参变成可选的 135
6.4.3 返回字典 136
6.4.4 结合使用函数和while循环 137
6.4.5 技能训练 138
6.5 传递列表 138
6.5.1 在函数中修改列表 139
6.5.2 禁止函数修改列表 140
6.5.3 技能训练 141
6.6 函数的特殊形式 141
6.6.1 匿名函数 141
6.6.2 递归函数 142
6.6.3 技能训练 143
6.7 Python常用内置函数 143
第7章 类与面向对象 147
7.1 面向对象 147
7.1.1 面向对象概述 147
7.1.2 面向对象的基本概念 148
7.2 类与对象 149
7.2.1 类与对象的关系 149
7.2.2 类的定义与访问 150
7.2.3 对象的创建与使用 150
7.2.4 访问限制 151
7.2.5 技能训练 152
7.3 类中特殊方法 152
7.3.1 构造方法 152
7.3.2 析构方法 153
7.3.3 类方法 154
7.3.4 静态方法 155
7.3.5 技能训练 156
7.4 使用类和实例 157
7.4.1 Car类 157
7.4.2 给属性指定默认值 157
7.4.3 修改属性的值 158
7.4.4 技能训练 161
7.5 继承 161
7.5.1 单继承与多继承 161
7.5.2 super()函数 162
7.5.3 子类的方法__init__() 162
7.5.4 给子类定义属性和方法 163
7.5.5 重写父类的方法 163
7.5.6 将实例用作属性 164
7.5.7 技能训练 165
7.6 多态 166
7.6.1 多态应用 166
7.6.2 技能训练 167
第8章 模块和包 170
8.1 Python程序的结构 170
8.2 模块概述 171
8.2.1 模块的概念 171
8.2.2 模块的导入方式 171
8.2.3 常见的标准模块 172
8.2.4 技能训练 176
8.3 自定义模块 176
8.4 导入类应用 177
8.4.1 导入单个类 178
8.4.2 在一个模块中存储多个类 179
8.4.3 从一个模块中导入多个类 180
8.4.4 导入整个模块 180
8.4.5 导入模块中的所有类 180
8.4.6 在一个模块中导入另一个模块 181
8.4.7 自定义工作流程 181
8.4.8 技能训练 182
8.5 Python标准库 182
8.5.1 Python标准库使用 182
8.5.2 技能训练 183
8.6 模块的导入特性 183
8.6.1 __all__属性 183
8.6.2 __name__属性 184
8.7 Python中的包 184
8.7.1 包的结构 184
8.7.2 包的导入 185
8.8 第三方模块的下载与安装 185
8.8.1 在命令提示符中下载和安装第三方模块 185
8.8.2 在PyCharm中下载和安装第三方模块 186
8.8.3 技能训练 186
第9章 文件I/O 189
9.1 文件的打开和关闭 189
9.1.1 打开文件 190
9.1.2 关闭文件 190
9.2 从文件中读取数据 191
9.2.1 文件的常用读取方法 191
9.2.2 读取整个文件 192
9.2.3 文件路径 193
9.2.4 逐行读取 194
9.2.5 创建一个包含文件各行内容的列表 195
9.2.6 使用文件的内容 195
9.2.7 包含一百万位的大型文件 196
9.2.8 技能训练 196
9.3 向文件写入数据 197
9.3.1 数据写入常用方法 197
9.3.2 写入空文件 198
9.3.3 写入多行 198
9.3.4 附加到文件 199
9.3.5 技能训练 199
9.4 文件的定位读取 199
9.4.1 tell()方法 199
9.4.2 seek()方法 200
9.5 文件的复制与重命名 200
9.5.1 文件的复制 200
9.5.2 文件的重命名 201
9.6 目录操作 201
9.6.1 创建目录 201
9.6.2 删除目录 202
9.6.3 获取目录的文件列表 202
9.7 文件路径操作 203
9.7.1 相对路径与路径 203
9.7.2 获取当前路径 203
9.7.3 检测路径的有效性 204
9.7.4 路径的拼接 204
9.7.5 技能训练 205
第10章 异常处理 207
10.1 错误和异常概述 207
10.2 捕获异常 209
10.2.1 try...except语句 209
10.2.2 为什么需要异常信息 210
10.2.3 捕获异常信息 211
10.2.4 else子句 213
10.2.5 finally子句 214
10.2.6 技能训练 214
10.3 抛出异常 215
10.3.1 raise语句 215
10.3.2 异常的传递 216
10.3.3 assert断言语句 217
10.4 自定义异常 217
10.4.1 定义自定义异常类 217
10.4.2 技能训练 218
10.5 with语句与上下文管理器 219
10.5.1 with语句 219
10.5.2 上下文管理器 219
10.5.3 自定义上下文管理器 220
10.5.4 技能训练 220
第11章 正则表达式 223
11.1 正则表达式基础知识 223
11.1.1 为什么需要正则表达式 223
11.1.2 什么是正则表达式 223
11.1.3 元字符 224
11.1.4 预定义字符集 227
11.2 使用re模块处理正则表达式 227
11.2.1 re模块 227
11.2.2 预编译 228
11.3 匹配与搜索 229
11.3.1 match()函数和search()函数 229
11.3.2 技能训练1 230
11.3.3 匹配对象 230
11.3.4 全文匹配 232
11.3.5 检索替换 233
11.3.6 技能训练2 233
11.3.7 文本分割 234
11.3.8 贪婪匹配和非贪婪匹配 234
11.3.9 技能训练3 235
第12章 图形用户界面编程 238
12.1 tkinter概述 238
12.1.1 认识tkinter 238
12.1.2 构建简单的GUI 240
12.2 tkinter组件概述 244