注册 登录 进入教材巡展
#

出版时间:2024-12

出版社:中国铁道出版社

以下为《Python程序设计与应用(第2版)》的配套数字资源,这些资源在您购买图书后将免费附送给您:
试读
  • 中国铁道出版社
  • 9787113313784
  • 2版
  • 559840
  • 16开
  • 2024-12
  • 计算机类
  • 本科
内容简介
本书为高等教育新工科信息技术课程系列教材之一,围绕Python的计算生态环境,采用 理论与实际案例相结合的方式,系统讲解了Python语言学习的路径。本书分15章,包括环境搭 建,数据类型,列表、元组字典和集合,控制语句,函数,面向对象程序设计,模块与包的使 用,文件操作,异常处理,数据库编程,网络编程,tkinter GUI编程,多线程编程,Python计 算生态,Python应用案例等。本书内容涵盖Python语言程序设计大部分知识点,叙述思路清晰,循序渐进,每章都以大 量实例为依托,提供了各知识点的全面详尽的讲解。本书适合作为高等院校Python程序设计课程的教材,也可作为对Python感兴趣的编程爱好 者的自学用书。
目录
第 1 章 环境搭建 .................................. 1
1.1 认识 Python.......................................1
1.1.1 Python 简史 ...............................1
1.1.2 Python 语言的特点 ...................1
1.2 Python 的安装...................................2
1.3 Python 的开发环境...........................6
1.3.1 交互式解释器 ...........................6
1.3.2 IDLE ..........................................6
1.3.3 PyCharm 的安装与使用 ...........8
1.4 Python 程序开发过程.....................14
1.5 Python 注释的使用.........................15 小结 ..........................................................15 习题 ..........................................................16
第 2 章 数据类型 ................................ 17
2.1 变量和数据类型 .............................17
2.1.1 变量和赋值 .............................17
2.1.2 整型 .........................................18
2.1.3 浮点型 .....................................19
2.1.4 复数类型 .................................19
2.1.5 布尔类型 .................................19
2.1.6 类型判断 .................................20
2.2 关键字 .............................................21
2.3 字符串 .............................................21
2.3.1 字符串和转义字符 .................21
2.3.2 深入使用字符串 .....................22
2.4 运算符 .............................................25
2.4.1 算术运算符 .............................25
2.4.2 赋值运算符 .............................27
2.4.3 位运算符 .................................28
2.4.4 关系运算符 .............................28
2.4.5 逻辑运算符 .............................29
2.4.6 成员运算符 .............................30
2.4.7 身份运算符 .............................30

2.4.8 运算符的优先级 .....................30
小结 ..........................................................31
习题 ..........................................................31
第 3 章 列表、元组、字典和集合 ....... 33
3.1 列表 .................................................33
3.1.1 列表创建与删除 .....................33
3.1.2 访问列表元素 .........................34
3.1.3 增加列表元素 .........................35
3.1.4 查找列表中的元素 .................36
3.1.5 删除列表元素 .........................37
3.1.6 修改列表元素 .........................38
3.1.7 列表的运算 .............................38
3.1.8 常用方法 .................................38
3.2 元组 .................................................39
3.2.1 创建元组 .................................39
3.2.2 元组的基本操作 .....................40
3.3 字典 .................................................41
3.3.1 字典的创建和删除 .................41
3.3.2 字典元素的访问与修改 .........42
3.3.3 字典元素的运算符操作 .........43
3.3.4 删除字典元素 .........................43
3.3.5 字典的复制和更新 .................44
3.3.6 字典的遍历 .............................45
3.4 集合 .................................................46
3.4.1 集合的创建 .............................46
3.4.2 集合的访问与修改 .................46
3.4.3 集合的删除 .............................47
 3.4.4 集合的运算符操作 .................48 小结 ..........................................................49 习题 ..........................................................49
第 4 章 控制语句 ................................ 51
4.1 条件语句 .........................................51
4.1.1 单分支结构:if 语句 ..............51





II Python 程序设计与应用(第 2 版)



4.1.2 双分支结构:if...else 语句.....52
4.1.3 多分支结构:if...elif...else
语句 .........................................54
4.2 循环语句 .........................................55
4.2.1 for 循环语句............................56
4.2.2 嵌套 for 循环语句...................56
4.2.3 while 循环语句........................57
4.3 break 和 continue 语句 ...................59
4.3.1 break 语句................................59
4.3.2 continue 语句...........................60
4.4 pass 语句 .........................................60 小结 ..........................................................60 习题 ..........................................................61
第 5 章 函数........................................ 64
5.1 函数的概念 .....................................64
5.2 函数的定义和调用 .........................65
5.3 函数的参数和参数传递 .................69
5.3.1 函数的形参和实参 .................69
5.3.2 位置参数 .................................70
5.3.3 关键字参数 .............................70
5.3.4 默认值参数 .............................71
5.3.5 参数传递 .................................72
5.4 变量的作用域 .................................73
5.4.1 局部变量 .................................73
5.4.2 全局变量 .................................74
5.5 迭代器和生成器 .............................75
5.5.1 迭代器和生成器 .....................75
5.5.2 排序与 lambda.........................78
 5.5.3 高阶函数 .................................79 小结 ..........................................................80 习题 ..........................................................80
第 6 章 面向对象程序设计.................. 82
6.1 面向对象概述 .................................82
6.2 类和对象 .........................................83
6.2.1 类定义语法 .............................84
6.2.2 对象 .........................................84
6.2.3 self 参数...................................85
6.2.4 实例变量 .................................87

6.2.5 类变量 .....................................88
6.3 方法 .................................................89
6.3.1 类方法 .....................................90
6.3.2 实例方法 .................................91
6.3.3 静态方法 .................................91
6.4 封装、继承与多态 .........................92
6.4.1 封装 .........................................92
6.4.2 继承 .........................................95
 6.4.3 多态 .........................................98 小结 ........................................................100 习题 ........................................................100
第 7 章 模块与包 .............................. 102
7.1 命名空间 .......................................102
7.1.1 命名空间的分类 ...................102
7.1.2 命名空间的规则 ...................103
7.2 模块 ...............................................105
7.2.1 导入模块  ...........................105
7.2.2 导入与执行语句 ...................106
7.2.3 import 和 from 的使用 ..........108
7.2.4 重新载入模块 ....................... 110
7.2.5 嵌套导入模块 ....................... 111
7.2.6 模块对象属性和命令行
参数 ....................................... 111
7.2.7 模块搜索路径 ....................... 113
7.3 包 ................................................... 114 小结 ........................................................ 116 习题 ........................................................ 117
第 8 章 文件操作 .............................. 119
8.1 文件概述 ....................................... 119
8.2 文件的路径 ...................................120
8.2.1 路径的概念 ...........................120
8.2.2 绝对路径与相对路径 ...........120
8.3 文本文件的读写 ...........................121
8.3.1 文件的打开与关闭 ...............121
8.3.2 文件的读写 ...........................122
8.3.3 文件的定位 ...........................125
8.3.4 文件读写异常处理 ...............126
8.4 文件操作函数 ...............................127





目 录 III



8.4.1 文件操作相关函数 ...............127
8.4.2 文件系统常用操作 ...............128
8.5 二进制文件操作 ...........................128
8.5.1 使用 pickle 模块....................129
8.5.2 使用 struct 模块.....................130
 8.5.3 文件批量处理 .......................130 小结 ........................................................132 习题 ........................................................132
第 9 章 异常处理 .............................. 134
9.1 异常的概念 ...................................134
9.2 异常处理机制 ...............................137
9.2.1 try...except 结构 .....................137
9.2.2 try...except...else 结构............138
9.2.3 多异常捕获 ...........................139
9.2.4 try...except...finally 结构 .......142
9.3 异常高级用法 ...............................143
9.3.1 强制触发异常(raise) ........143
 9.3.2 断言与上下文管理语句 .......144 小结 ........................................................145 习题 ........................................................146
第 10 章 数据库编程........................... 147
10.1 Python 数据库 API .....................147
10.1.1 全局变量 .............................147
10.1.2 数据库异常 .........................148
10.1.3 连接和游标 .........................149
10.1.4 类型 .....................................150
10.2 轻型数据库与 MySQL ...............151
10.2.1 SQLite 的使用 .....................151
10.2.2 MySQL 的使用 ...................154
 10.2.3 数据库应用程序示例 .........156 小结 ........................................................158 习题 ........................................................159
第 11 章 网络编程 ............................... 160
11.1 网络模块 .....................................160
11.1.1 Socket 模块..........................160
11.1.2 urlib 和 urllib2 模块 ............163
11.1.3 其他模块..............................166
11.2 高级模块 SocketServer ...............167

11.2.1 创建 SocketServer TCP
服务器  .............................168
11.2.2 创建 SocketServer TCP
客户端  .............................169
11.2.3 执行 TCP 服务器
和客户端 .............................169 小结 ........................................................170 习题 ........................................................170
第 12 章 tkinter GUI 编程 ................... 171
12.1 tkinter 编程基础..........................171
12.1.1 第一个 tkinter GUI 程序 .....171
12.1.2 组件打包 .............................173
12.1.3 添加按钮和事件处理函数...175
12.1.4 使用布局 .............................177
12.1.5 使用框架 .............................180
12.2 tkinter 组件..................................181
12.2.1 组件通用属性设置 .............181
12.2.2 输入组件(Entry).............183
12.2.3 列表框组件(Listbox) .....186
12.2.4 复选框组件(Checkbutton)...187
12.2.5 标签框架(LabelFrame) ...189
12.2.6 文本框组件(Text) ..........190
12.2.7 顶层窗口组件(Toplevel) ...192
12.2.8 菜单组件(Menu) ............193
12.2.9 工具栏 .................................195
 12.2.10 对话框 ...............................195 小结 ........................................................199 习题 ........................................................199
第 13 章 多线程编程........................... 200
13.1 线程概述 .....................................200
13.1.1 进程 .....................................200
13.1.2 线程 .....................................201
13.1.3 多线程与多进程 .................201
13.2 线程的创建与运行 .....................201
13.3 线程的管理 .................................203
13.3.1 阻塞线程 .............................203
13.3.2 后台线程 .............................204
13.4 线程安全 .....................................205





IV Python 程序设计与应用(第 2 版)



13.4.1 线程安全问题 .....................205
13.4.2 互斥锁 .................................205
13.4.3 死锁问题 .............................207
13.5 线程通信 .....................................209
13.5.1 Condition 同步线程 ............209
13.5.2 使用 Event 实现线程间
通信 ..................................... 211 小结 ........................................................212 习题 ........................................................212
第 14 章 Python 计算生态 .................. 214
14.1 常用第三方库 .............................214
14.2 Python 标准库.............................215
14.2.1 math 库 ................................215
14.2.2 random 库 ............................216
14.2.3 datetime/time 库 ..................216
14.2.4 turtle 库 ................................217
14.3 PyInstaller 库...............................218
14.4 jieba 库 ........................................218
14.4.1 分词 .....................................219
14.4.2 添加自定义词典 .................219
14.5 numpy 基础科学计算库 .............220
14.5.1 创建 numpy 数组 ................220
14.5.2 数组与数值的算术运算 .....221
14.5.3 数组与数组的算术运算 .....222
14.5.4 数组的关系运算 .................222
14.5.5 分段函数 .............................223
14.5.6 数组元素访问 .....................223
14.5.7 数组切片操作 .....................224
14.5.8 改变数组形状 .....................224
14.5.9 二维数组转置 .....................225
14.5.10 向量内积 ...........................225
14.5.11 数组的函数运算................226
14.5.12 对数组不同维度元素进行 计算....................................227
14.5.13 广播 ...................................227
14.5.14 计算数组中元素出现次数...228
14.5.15 矩阵运算 ...........................229

14.6 matplotlib 数值计算可视化库....229
14.6.1 绘制正弦曲线 .....................229
14.6.2 绘制散点图 .........................230
14.6.3 绘制饼图 .............................231
14.6.4 绘制带有中文标签 和图例的图 ..........................232
14.6.5 绘制带有公式的图 .............232
14.6.6 绘制三维参数曲线 .............233
14.6.7 绘制三维图形 .....................234
14.7 pandas 数据分析库 .....................235
14.7.1 安装 pandas .........................235
14.7.2 pandas 的数据结构 Series...235
14.7.3 pandas 的数据结构
DataFrame ............................237 小结 ........................................................240 习题 ........................................................241
第 15 章 Python 应用案例 .................. 243
15.1 泰坦尼克号乘客生存分析 .........243
15.1.1 数据来源 .............................243
15.1.2 导入数据 .............................243
15.1.3 查看数据 .............................244
15.1.4 数据清洗 .............................246
15.1.5 数据编码 .............................246
15.1.6 数据可视化 .........................249
15.2 Python 网络爬取.........................255
15.2.1 BeautifulSoup 库 .................255
15.2.2 爬取搜狐体育新闻 .............261
15.3 手写识别系统 .............................263
15.3.1 K 近邻算法原理..................264
15.3.2 KNN 算法实现....................265
15.3.3 KNN 算法优缺点................266
15.3.4 手写数字识别系统 .............266 小结 ........................................................271 习题 ........................................................271 参考文献 .............................................. 272