万本电子书0元读

万本电子书0元读

顶部广告

Python程序设计与算法基础教程(第2版)-微课版电子书

本教程集教材、练习册、上机指导于一体,基于Windows 10和Python 3.7构建Python发平台,通过大量的实例,由浅深、循序渐地阐述Python语言的基础知识,以及使用Python语言的实际发应用实例。700多个实例,431道复习题,563个实践项目案例,37个综合案例

售       价:¥

纸质售价:¥43.40购买纸书

327人正在读 | 0人评论 6.2

作       者:江红,余青松

出  版  社:清华大学出版社

出版时间:2019-07-01

字       数:22.9万

所属分类: 科技 > 计算机/网络 > 程序设计

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
本书集教材、练习册、上机指导于一体,基于Windows 10和Python 3.7构建Python发平台,阐述Python语言的基础知识,以及使用Python语言的发应用实例,具体内容包括Python概述,Python语言基础,程序流程控制,常用内置数据类型,序列数据类型,输和输出,错误和异常处理,函数、类和对象,模块和客户端,算法与数据结构基础,图形用户界面,图形绘制,数值日期和时间处理,字符串和文本处理,文件、数据库访问,网络和Web编程,多线程编程以及系统管理等。 本书编者结合多年的程序设计、系统发以及授课经验,由浅深、循序渐地介绍Python程序设计语言,让读者能够较为系统、全面地掌握程序设计的理论和应用。本书还提供了教学微课视频。 本书可以作为高等学校各专业的计算机程序设计教程,也可作为广大程序设计发者、爱好者的自学参考书。<br/>【推荐语】<br/>本教程集教材、练习册、上机指导于一体,基于Windows 10和Python 3.7构建Python发平台,通过大量的实例,由浅深、循序渐地阐述Python语言的基础知识,以及使用Python语言的实际发应用实例。700多个实例,431道复习题,563个实践项目案例,37个综合案例<br/>
目录展开

封面页

书名页

版权页

内容简介

前言

第1章 Python概述

1.1 初识Python语言

1.1.1 Python语言简介

1.1.2 Python语言的特点

1.1.3 Python语言的应用范围

1.2 Python语言版本和开发环境

1.2.1 Python语言的版本

1.2.2 Python语言的实现

1.2.3 Python语言的集成开发环境

1.3 下载和安装Python

1.3.1 下载Python

1.3.2 安装Python

1.3.3 安装和管理Python扩展包

1.4 使用Python解释器解释执行Python程序

1.4.1 运行Python解释器

1.4.2 运行Python集成开发环境

1.5 使用文本编辑器和命令行编写和执行Python源文件程序

1.5.1 编写输出“Hello,World!”的程序

1.5.2 输出“Hello,World!”程序的源代码分析

1.5.3 运行Python源代码程序

1.5.4 命令行参数

1.6 使用集成开发环境IDLE编写和执行Python源文件程序

1.6.1 使用IDLE编写程序

1.6.2 使用IDLE编辑程序

1.7 在线帮助和相关资源

1.7.1 Python交互式帮助系统

1.7.2 Python文档

1.7.3 Python官网

1.7.4 Python扩展库索引

1.8 复习题

1.9 上机实践

1.10 案例研究:安装和使用其他Python环境

第2章 Python语言基础

2.1 Python程序概述

2.1.1 引例

2.1.2 Python程序的构成

2.2 Python对象和引用

2.2.1 Python对象概述

2.2.2 使用字面量创建实例对象

2.2.3 使用类对象创建实例对象

2.2.4 数据类型

2.2.5 变量和对象的引用

2.2.6 Python是动态类型语言

2.2.7 Python是强类型语言

2.2.8 对象内存示意图

2.2.9 对象的值比较和引用判别

2.2.10 不可变对象和可变对象

2.3 标识符及其命名规则

2.3.1 标识符

2.3.2 保留关键字

2.3.3 Python预定义标识符

2.3.4 命名规则

2.4 变量和赋值语句

2.4.1 变量的声明和赋值

2.4.2 链式赋值语句

2.4.3 复合赋值语句

2.4.4 删除变量

2.4.5 序列解包赋值

2.4.6 常量

2.5 表达式和运算符

2.5.1 表达式的组成

2.5.2 表达式的书写规则

2.5.3 运算符概述

2.5.4 Python运算符

2.6 语 句

2.6.1 Python语句

2.6.2 Python语句的书写规则

2.6.3 复合语句及其缩进书写规则

2.6.4 注释语句

2.6.5 空语句

2.7 函数和模块

2.7.1 函数的创建和调用

2.7.2 内置函数

2.7.3 模块函数

2.7.4 函数API

2.8 类和对象

2.8.1 创建类对象

2.8.2 实例对象的创建和调用

2.9 模块和包

2.10 复习题

2.11 上机实践

2.12 案例研究:使用Pillow库处理图像文件

第3章 程序流程控制

3.1 顺序结构

3.2 选择结构

3.2.1 分支结构的形式

3.2.2 单分支结构

3.2.3 双分支结构

3.2.4 多分支结构

3.2.5 if语句的嵌套

3.2.6 if语句的典型示例代码

3.2.7 选择结构综合举例

3.3 循环结构

3.3.1 可迭代对象

3.3.2 range对象

3.3.3 for循环

3.3.4 while循环

3.3.5 循环的嵌套

3.3.6 break语句

3.3.7 continue语句

3.3.8 死循环

3.3.9 else子句

3.3.10 enumerate()函数和循环

3.3.11 zip()函数和循环

3.3.12 map()函数和循环

3.3.13 循环语句的典型示例代码

3.3.14 循环结构综合举例

3.4 复习题

3.5 上机实践

3.6 案例研究:使用嵌套循环实现图像处理算法

第4章 常用内置数据类型

4.1 Python内置数据类型概述

4.1.1 数值数据类型

4.1.2 序列数据类型

4.1.3 集合数据类型

4.1.4 字典数据类型

4.1.5 NoneType、NotImplementedType和EllipsisType

4.1.6 其他数据类型

4.2 int类型

4.2.1 整型字面量

4.2.2 int对象

4.2.3 int对象的方法

4.2.4 整数的运算

4.3 float类型

4.3.1 浮点类型字面量

4.3.2 float对象

4.3.3 float对象的方法

4.3.4 浮点数的运算

4.4 complex类型

4.4.1 复数类型字面量

4.4.2 complex对象

4.4.3 complex对象的属性和方法

4.4.4 复数的运算

4.5 bool类型

4.5.1 布尔值字面量

4.5.2 bool对象

4.5.3 逻辑运算符

4.6 str类型

4.6.1 字符串字面量

4.6.2 字符串编码

4.6.3 转义字符

4.6.4 str对象

4.6.5 str对象的属性和方法

4.6.6 字符串的运算

4.6.7 对象转换为字符串

4.6.8 字符串的格式化

4.6.9 格式化字符串变量

4.7 比较关系运算和条件表达式

4.7.1 条件表达式

4.7.2 关系和测试运算符

4.8 算术运算符和位运算符

4.8.1 算术运算符

4.8.2 位运算符

4.9 混合运算和数值类型转换

4.9.1 隐式转换

4.9.2 显式转换

4.10 内置标准数学函数

4.10.1 内置数学运算函数

4.10.2 数制转换函数

4.11 复习题

4.12 上机实践

4.13 案例研究:科学计算和数据分析

第5章 序列数据类型

5.1 Python序列数据概述

5.1.1 数组

5.1.2 Python内置的序列数据类型

5.2 序列数据的基本操作

5.2.1 序列的长度、最大值、最小值、求和

5.2.2 序列的索引访问操作

5.2.3 序列的切片操作

5.2.4 序列的连接和重复操作

5.2.5 序列的成员关系操作

5.2.6 序列的比较运算操作

5.2.7 序列的排序操作

5.2.8 内置函数all()和any()

5.2.9 序列的拆分

5.3 元 组

5.3.1 使用元组字面量创建元组实例对象

5.3.2 使用tuple对象创建元组实例对象

5.3.3 元组的序列操作

5.4 列 表

5.4.1 使用列表字面量创建列表实例对象

5.4.2 使用list对象创建列表实例对象

5.4.3 列表的序列操作

5.4.4 list对象的方法

5.4.5 列表解析表达式

5.5 字符串

5.5.1 字符串的序列操作

5.5.2 字符串编码

5.5.3 字符串的格式化

5.6 字节序列

5.6.1 bytes常量

5.6.2 创建bytes对象

5.6.3 创建bytearray对象

5.6.4 bytes和bytearray的序列操作

5.6.5 字节编码和解码

5.7 复习题

5.8 上机实践

5.9 案例研究:猜单词游戏

第6章 输入和输出

6.1 输入和输出概述

6.2 命令行参数

6.2.1 sys.argv与命令行参数

6.2.2 argparse模块和命令行参数解析

6.3 标准输入和标准输出函数

6.3.1 输入和输出函数

6.3.2 交互式用户输入

6.3.3 运行时提示输入密码

6.4 文件和文件对象

6.4.1 文件对象和open()函数

6.4.2 文件的打开、写入、读取和关闭

6.4.3 with语句和上下文管理协议

6.5 标准输入、输出和错误流

6.5.1 标准输入、输出和错误流文件对象

6.5.2 读取任意长度的输入流

6.5.3 标准输入、输出和错误流重定向

6.6 重定向和管道

6.6.1 重定向标准输出到一个文件

6.6.2 重定向文件到标准输入

6.6.3 管道

6.6.4 过滤器

6.7 复习题

6.8 上机实践

6.9 案例研究:21点扑克牌游戏

第7章 错误和异常处理

7.1 程序的错误

7.1.1 语法错误

7.1.2 运行时错误

7.1.3 逻辑错误

7.2 异常处理

7.2.1 异常处理概述

7.2.2 内置的异常类

7.2.3 引发异常

7.2.4 捕获处理异常机制概述

7.2.5 Python虚拟机捕获处理异常

7.2.6 使用try…except…else…finally语句捕获处理异常

7.2.7 捕获异常的顺序

7.2.8 finally块和发生异常后的处理

7.2.9 自定义异常类

7.3 断言处理

7.3.1 断言处理概述

7.3.2 assert语句和AssertionError类

7.3.3 启用/禁用断言

7.4 程序的基本调试方法

7.4.1 语法错误的调试

7.4.2 运行时错误的调试

7.4.3 逻辑错误的调试

7.5 使用logging模块输入日志

7.5.1 logging模块概述

7.5.2 logging的配置和使用

7.6 复习题

7.7 上机实践

7.8 案例研究:使用调试器调试Python程序

第8章 函数和函数式编程

8.1 函数概述

8.1.1 函数的基本概念

8.1.2 函数的功能

8.1.3 Python中函数的分类

8.2 函数的声明和调用

8.2.1 函数对象的创建

8.2.2 函数的调用

8.2.3 函数的副作用

8.3 参数的传递

8.3.1 形式参数和实际参数

8.3.2 形式参数变量和对象引用传递

8.3.3 传递不可变对象的引用

8.3.4 传递可变对象的引用

8.3.5 可选参数

8.3.6 位置参数和命名参数

8.3.7 可变参数

8.3.8 强制命名参数

8.3.9 参数类型检查

8.4 函数的返回值

8.4.1 return语句和函数返回值

8.4.2 多条return语句

8.4.3 返回多个值

8.5 变量的作用域

8.5.1 全局变量

8.5.2 局部变量

8.5.3 全局语句global

8.5.4 非局部语句nonlocal

8.5.5 类成员变量

8.5.6 输出局部变量和全局变量

8.6 递归函数

8.6.1 递归函数的定义

8.6.2 递归函数的原理

8.6.3 编写递归函数时需要注意的问题

8.6.4 递归函数的应用:最大公约数

8.6.5 递归函数的应用:汉诺塔

8.7 内置函数的使用

8.7.1 内置函数一览

8.7.2 eval()函数

8.7.3 exec()函数

8.7.4 compile()函数

8.8 Python函数式编程基础

8.8.1 作为对象的函数

8.8.2 高阶函数

8.8.3 map()函数

8.8.4 filter()函数

8.8.5 Lambda表达式和匿名函数

8.8.6 operator模块和操作符函数

8.8.7 functools.reduce()函数

8.8.8 偏函数

8.8.9 sorted()函数

8.8.10 函数装饰器

8.9 复习题

8.10 上机实践

8.11 案例研究:井字棋游戏

第9章 面向对象的程序设计

9.1 面向对象概念

9.1.1 对象的定义

9.1.2 封装

9.1.3 继承

9.1.4 多态性

9.2 类对象和实例对象

9.2.1 类对象

9.2.2 实例对象

9.3 属 性

9.3.1 实例对象属性

9.3.2 类对象属性

9.3.3 私有属性和公有属性

9.3.4 @property装饰器

9.3.5 特殊属性

9.3.6 自定义属性

9.4 方 法

9.4.1 对象实例方法

9.4.2 静态方法

9.4.3 类方法

9.4.4 __init__()方法和__new__()方法

9.4.5 __del__()方法

9.4.6 私有方法与公有方法

9.4.7 方法的重载

9.5 继 承

9.5.1 派生类

9.5.2 查看继承的层次关系

9.5.3 类成员的继承和重写

9.6 对象的特殊方法

9.6.1 对象的特殊方法概述

9.6.2 运算符重载与对象的特殊方法

9.6.3 @functools.total_ordering装饰器

9.6.4 __call__()方法和可调用对象

9.7 对象的引用、浅拷贝和深拷贝

9.7.1 对象的引用

9.7.2 对象的浅拷贝

9.7.3 对象的深拷贝

9.8 可迭代对象:迭代器和生成器

9.8.1 可迭代对象

9.8.2 迭代器

9.8.3 迭代器协议

9.8.4 可迭代对象的迭代:iter()函数和next()函数

9.8.5 可迭代对象的迭代:for语句

9.8.6 自定义可迭代对象和迭代器

9.8.7 生成器函数

9.8.8 反向迭代:reversed迭代器

9.8.9 生成器表达式

9.8.10 range可迭代对象

9.8.11 map迭代器和itertools.starmap迭代器

9.8.12 filter迭代器和itertools.filterfalse迭代器

9.8.13 zip迭代器和itertools.zip_longest迭代器

9.8.14 enumerate迭代器

9.8.15 无穷序列迭代器itertools.count、cycle和repeat

9.8.16 累计迭代器itertools.accumulate

9.8.17 级联迭代器itertools.chain

9.8.18 选择压缩迭代器itertools.compress

9.8.19 截取迭代器itertools.dropwhile和takewhile

9.8.20 切片迭代器itertools.islice

9.8.21 分组迭代器itertools.groupby

9.8.22 返回多个迭代器itertools.tee

9.8.23 组合迭代器itertools.combinations和combinations_with_replacement

9.8.24 排列迭代器itertools.permutations

9.8.25 笛卡儿积迭代器itertools.product

9.9 自定义类应用举例

9.9.1 Color类

9.9.2 Histogram类

9.10 复习题

9.11 上机实践

9.12 案例研究:文本相似度比较分析

第10章 模块和客户端

10.1 模块化程序设计的概念

10.1.1 模块化程序设计

10.1.2 模块的API

10.1.3 模块的实现

10.1.4 模块的客户端

10.1.5 模块化程序设计的优越性

10.2 模块的设计和实现

10.2.1 模块设计的一般原则

10.2.2 API设计

10.2.3 创建模块

10.2.4 模块的私有函数

10.2.5 模块的测试代码

10.2.6 编写模块文档字符串

10.2.7 按字节编译的.pyc文件

10.3 模块的导入和使用

10.3.1 导入模块和使用模块

10.3.2 导入模块中的成员

10.3.3 重新加载模块

10.3.4 动态导入模块

10.4 包

10.4.1 包的概念

10.4.2 创建包

10.4.3 包的导入和使用

10.5 模块的导入顺序

10.5.1 导入模块时的搜索顺序

10.5.2 模块搜索路径

10.5.3 dir()函数

10.6 名称空间与名称查找顺序

10.6.1 名称空间概述

10.6.2 名称查找顺序

10.6.3 顶层模块和__name__变量

10.6.4 Python解释器

10.6.5 全局名称空间

10.6.6 局部名称空间

10.6.7 类和对象名称空间

10.7 复习题

10.8 上机实践

10.9 案例研究:基于模块的库存管理系统

第11章 算法与数据结构基础

11.1 算法及其性能分析

11.1.1 算法概述

11.1.2 算法的时间复杂度分析

11.1.3 增长量级

11.1.4 算法的空间复杂度分析

11.2 查找算法

11.2.1 顺序查找法

11.2.2 二分查找法

11.2.3 Python语言提供的查找算法

11.3 排序算法

11.3.1 冒泡排序法

11.3.2 选择排序法

11.3.3 插入排序法

11.3.4 归并排序法

11.3.5 快速排序法

11.3.6 Python语言提供的排序算法

11.4 常用数据结构

11.4.1 数据结构概述

11.4.2 常用数据结构概述

11.4.3 Python中的collections模块

11.5 数 组

11.5.1 列表和数组

11.5.2 array.array对象和数组

11.6 栈和队列

11.6.1 栈的实现:使用列表

11.6.2 deque对象

11.6.3 deque作为栈

11.6.4 deque作为队列

11.7 集 合

11.7.1 集合的定义

11.7.2 集合解析表达式

11.7.3 判断集合元素是否存在

11.7.4 集合的运算:并集、交集、差集和对称差集

11.7.5 集合的比较运算:相等、子集和超集

11.7.6 集合的长度、最大值、最小值、元素和

11.7.7 可变集合的方法

11.8 字 典

11.8.1 对象的哈希值

11.8.2 字典的定义

11.8.3 字典的访问操作

11.8.4 字典的视图对象

11.8.5 字典的遍历

11.8.6 字典解析表达式

11.8.7 判断字典键是否存在

11.8.8 字典对象的长度和比较

11.8.9 字典对象的方法

11.8.10 defaultdict对象

11.8.11 OrderedDict对象

11.8.12 ChainMap对象

11.8.13 Counter对象

11.9 collections模块的其他数据结构

11.9.1 namedtuple对象

11.9.2 UserDict、UserList和UserString对象

11.10 应用举例

11.10.1 去除列表中的重复项

11.10.2 基于字典的通讯录

11.11 复习题

11.12 上机实践

11.13 案例研究:程序运行时间度量分析

第12章 图形用户界面

12.1 图形用户界面概述

12.1.1 tkinter

12.1.2 其他GUI库简介

12.2 tkinter概述

12.2.1 tkinter模块

12.2.2 图形用户界面的构成

12.2.3 框架和GUI应用程序类

12.2.4 tkinter主窗口

12.3 几何布局管理器

12.3.1 pack几何布局管理器

12.3.2 grid几何布局管理器

12.3.3 place几何布局管理器

12.4 事件处理

12.4.1 事件类型

12.4.2 事件绑定

12.4.3 事件处理函数

12.5 常用组件

12.5.1 Label

12.5.2 LabelFrame

12.5.3 Button

12.5.4 Message

12.5.5 Entry

12.5.6 Text

12.5.7 Radiobutton

12.5.8 Checkbutton

12.5.9 Listbox

12.5.10 OptionMenu

12.5.11 Scale

12.5.12 Toplevel

12.5.13 ttk子模块控件

12.6 对话框

12.6.1 通用消息对话框

12.6.2 文件对话框

12.6.3 颜色选择对话框

12.6.4 通用对话框应用举例

12.6.5 简单对话框

12.7 菜单和工具栏

12.7.1 创建主菜单

12.7.2 创建上下文菜单

12.7.3 菜单应用举例

12.8 基于wxPython的图形用户界面设计入门

12.8.1 wxPython概述

12.8.2 安装wxPython库

12.8.3 wxPython应用程序的基本架构

12.8.4 使用wxPython开发简易文本编辑器

12.9 复习题

12.10 上机实践

12.11 案例研究:简易图形用户界面计算器

第13章 图形绘制

13.1 Python绘图模块概述

13.2 基于tkinter的图形绘制

13.2.1 基于tkinter的画布绘图概述

13.2.2 创建画布对象

13.2.3 绘制矩形

13.2.4 绘制椭圆

13.2.5 绘制圆弧

13.2.6 绘制线条

13.2.7 绘制多边形

13.2.8 绘制字符串

13.2.9 应用举例:绘制函数图形

13.3 基于turtle模块的海龟绘图

13.3.1 海龟绘图概述

13.3.2 turtle模块概述

13.3.3 绘制正方形

13.3.4 绘制多边形

13.3.5 绘制圆形螺旋

13.3.6 递归图形

13.3.7 海龟绘图的应用实例

13.4 基于Matplotlib模块的绘图

13.4.1 Matplotlib模块概述

13.4.2 安装Matplotlib模块

13.4.3 使用Matplotlib模块绘图概述

13.4.4 绘制函数曲线

13.4.5 绘制多个图形

13.4.6 绘制直方图

13.5 复习题

13.6 上机实践

13.7 案例研究:汉诺塔问题求解动画

第14章 数值日期和时间处理

14.1 相关模块概述

14.1.1 数值处理的相关模块

14.1.2 日期和时间处理的相关模块

14.2 math模块和数学函数

14.2.1 math模块的API

14.2.2 math模块应用举例

14.3 cmath模块和复数数学函数

14.4 random模块和随机函数

14.4.1 种子和随机状态

14.4.2 随机整数

14.4.3 随机序列

14.5 数值运算模块NumPy

14.5.1 数值运算模块的基本使用

14.5.2 创建数组

14.5.3 处理数组

14.5.4 数组应用举例

14.6 日期和时间处理

14.6.1 相关术语

14.6.2 时间对象

14.6.3 测量程序运行时间

14.6.4 日期对象

14.6.5 获取当前日期时间

14.6.6 日期时间格式化为字符串

14.6.7 日期时间字符串解析为日期时间对象

14.7 应用举例

14.7.1 蒙特卡洛模拟:赌徒破产命运

14.7.2 使用随机数估值圆周率

14.7.3 程序运行时间测量

14.8 复习题

14.9 上机实践

14.10 案例研究:使用pandas进行数据分析和处理

第15章 字符串和文本处理

15.1 相关模块概述

15.1.1 字符串和文本处理的相关模块

15.1.2 字符串处理的常用方法

15.2 字符串处理的常用操作

15.2.1 字符串的类型判断

15.2.2 字符串的大小写转换

15.2.3 字符串的填充、空白和对齐

15.2.4 字符串的测试、查找和替换

15.2.5 字符串的拆分和组合

15.2.6 字符串的翻译和转换

15.2.7 字符串应用举例

15.3 正则表达式

15.3.1 正则表达式语言概述

15.3.2 正则表达式引擎

15.3.3 普通字符和转义字符

15.3.4 字符类和预定义字符类

15.3.5 边界匹配符

15.3.6 重复限定符

15.3.7 匹配算法:贪婪和懒惰

15.3.8 选择分支

15.3.9 分组和向后引用

15.3.10 正则表达式的匹配模式

15.3.11 常用正则表达式

15.4 正则表达式模块re

15.4.1 匹配和搜索函数

15.4.2 匹配选项

15.4.3 正则表达式对象

15.4.4 匹配对象

15.4.5 匹配和替换

15.4.6 分隔字符串

15.5 正则表达式应用举例

15.5.1 字符串包含验证

15.5.2 字符串的查找和拆分

15.5.3 字符串的替换和清除

15.5.4 字符串的查找和截取

15.6 应用举例

15.6.1 文本统计

15.6.2 基因预测

15.6.3 字符串的简单加密和解密

15.7 复习题

15.8 上机实践

15.9 案例研究:NLTK与自然语言处理

第16章 文件和数据交换

16.1 文件操作相关模块概述

16.2 文本文件的读取和写入

16.2.1 文本文件的写入

16.2.2 文本文件的读取

16.2.3 文本文件的编码

16.3 二进制文件的读取和写入

16.3.1 二进制文件的写入

16.3.2 二进制文件的读取

16.4 随机文件访问

16.5 内存文件的操作

16.5.1 StringIO和内存文本文件的操作

16.5.2 BytesIO和内存二进制文件的操作

16.6 文件的压缩和解压缩

16.7 CSV格式文件的读取和写入

16.7.1 csv.reader对象和CSV文件的读取

16.7.2 csv.writer对象和CSV文件的写入

16.7.3 csv.DictReader对象和CSV文件的读取

16.7.4 csv.DictWriter对象和CSV文件的写入

16.7.5 CSV文件格式化参数和Dialect对象

16.8 输入重定向和管道

16.8.1 FileInput对象

16.8.2 fileinput模块的函数

16.8.3 输入重定向

16.9 对象序列化

16.9.1 对象序列化概述

16.9.2 pickle模块和对象序列化

16.9.3 json模块和JSON格式数据

16.10 复习题

16.11 上机实践

16.12 案例研究:百度音乐批量下载器

第17章 数据库访问

17.1 数据库基础

17.1.1 数据库的概念

17.1.2 关系数据库

17.2 Python数据库访问模块

17.2.1 通用数据库访问模块

17.2.2 专用数据库访问模块

17.2.3 SQLite数据库和sqlite3模块

17.3 使用sqlite3模块连接和操作SQLite数据库

17.3.1 访问数据库的步骤

17.3.2 创建数据库和表

17.3.3 数据库表的插入、更新和删除操作

17.3.4 数据库表的查询操作

17.4 使用SQLiteStudio查看和维护SQLite数据库

17.5 复习题

17.6 上机实践

17.7 案例研究:基于数据库和GUI的教务管理系统

第18章 网络编程和通信

18.1 网络编程的基本概念

18.1.1 网络基础知识

18.1.2 TCP/IP协议简介

18.1.3 IP地址和域名

18.1.4 统一资源定位器

18.2 基于socket的网络编程

18.2.1 socket概述

18.2.2 创建socket对象

18.2.3 将服务器端socket绑定到指定地址

18.2.4 服务器端socket开始侦听

18.2.5 连接和接收连接

18.2.6 发送和接收数据

18.2.7 简单TCP程序:Echo Server

18.2.8 简单UDP程序:Echo Server

18.2.9 UDP程序:Quote Server

18.3 基于urllib的网络编程

18.3.1 打开和读取URL网络资源

18.3.2 创建Request对象

18.4 基于http的网络编程

18.5 基于ftplib的网络编程

18.5.1 创建FTP对象

18.5.2 创建FTP_TLS对象

18.6 基于poplib和smtplib的网络编程

18.6.1 使用poplib接收邮件

18.6.2 使用smtplib发送邮件

18.7 复习题

18.8 上机实践

18.9 案例研究:网络爬虫案例

第19章 并行计算:进程、线程和协程

19.1 并行处理概述

19.1.1 进程、线程和协程

19.1.2 Python语言与并行处理相关模块

19.2 基于线程的并发处理

19.2.1 threading模块概述

19.2.2 使用Thread对象创建线程

19.2.3 自定义派生于Thread的对象

19.2.4 线程加入

19.2.5 用户线程和daemon线程

19.2.6 Timer线程

19.2.7 基于原语锁的简单同步

19.2.8 基于条件变量的同步和通信

19.2.9 基于queue模块中队列的同步

19.2.10 基于Event的同步和通信

19.3 基于进程的并行计算

19.3.1 multiprocessing模块概述

19.3.2 创建和使用进程

19.3.3 进程的数据共享

19.3.4 进程池

19.4 基于线程池/进程池的并发和并行任务

19.4.1 concurrent.futures模块概述

19.4.2 使用ThreadPoolExecutor并发执行任务

19.4.3 使用ProcessPoolExecutor并发执行任务

19.5 基于asyncio的异步IO编程

19.5.1 asyncio模块概述

19.5.2 创建协程对象

19.5.3 创建任务对象

19.6 应用举例

19.6.1 使用Pool并行计算查找素数

19.6.2 使用ProcessPoolExecutor并行判断素数

19.6.3 使用ThreadPoolExecutor多线程爬取网页

19.7 复习题

19.8 上机实践

19.9 案例研究:文本统计并行处理

第20章 系统管理

20.1 系统管理相关模块

20.2 目录、文件和磁盘的基本操作

20.2.1 创建目录

20.2.2 临时目录和文件的创建

20.2.3 切换和获取当前工作目录

20.2.4 目录内容列表

20.2.5 文件通配符和glob.glob()函数

20.2.6 遍历目录和os.walk()函数

20.2.7 判断文件/目录是否存在

20.2.8 测试文件类型

20.2.9 文件的日期及大小

20.2.10 文件和目录的删除

20.2.11 文件和目录的复制、重命名和移动

20.2.12 磁盘的基本操作

20.3 执行操作系统命令和运行其他程序

20.3.1 os.system()函数

20.3.2 os.popen()函数

20.3.3 subprocess模块

20.4 获取终端的大小

20.5 文件的压缩和解压缩

20.5.1 shutil模块支持的压缩和解压缩格式

20.5.2 make_archive()函数和文件压缩

20.5.3 unpack_archive()函数和文件解压缩

20.6 configparser模块和配置文件

20.6.1 INI文件及INI文件格式

20.6.2 ConfigParser对象和INI文件操作

20.7 应用举例

20.7.1 病毒扫描

20.7.2 文件目录树

20.8 复习题

20.9 上机实践

20.10 案例研究:简易图形用户界面压缩软件

参考文献

附录CD

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部