当前位置:当前位置:主页 > 计算机电子书 > 程序设计 > Python编程 pdf电子书
Python程序设计与算法基础教程

Python程序设计与算法基础教程 PDF 微课第2版

  • 更新:2019-10-18
  • 大小:107.6 MB
  • 类别:Python编程
  • 作者:江红、余青松
  • 出版:清华大学出版社
  • 格式:PDF

  • 资源介绍
  • 学习心得
  • 相关内容

Python程序设计与算法基础教程》是由清华大学出版社出版的一本关于Python编程方面的书籍,作者是江红、余青松,主要介绍了关于Python、程序设计、算法、基础教程方面的知识内容,目前在Python编程类书籍综合评分为:7.7分。

书籍介绍

Python程序设计与算法基础教程 微课第2版 PDF

Python程序设计与算法基础教程》集教材内容、教辅书、上机操作具体指导于一体化,根据Windows 10和Python 3.7搭建Python平台,根据很多的案例,循序渐进、由浅入深地论述Python語言的基本知识,及其应用Python語言的具体开发设计运用案例。700好几个案例,431道复习题,563个实践活动新项目案例,37个综合性案例 

这书集教材内容、教辅书、上机操作具体指导于一体化,根据Windows 10和Python 3.7搭建Python平台,论述Python語言的基本知识,及其应用Python語言的开发设计运用案例,主要内容包含Python简述,Python語言基本,操作流程操纵,常见内嵌数据类型,编码序列数据类型,键入和輸出,不正确和异常处理,涵数、类和对象,控制模块和手机客户端,优化算法与数据结构基本,图形用户界面,图型绘图,标值时间和時间解决,字符数组和文本处理,文档、数据库查询浏览,互联网和Web程序编写,多线程编程及其管理信息系统等。 这书小编融合很多年的编程设计、系统软件开发及其讲课工作经验,循序渐进、由浅入深地详细介绍Python编程语言,让用户可以比较系统软件、全方位地把握编程设计的基础理论和运用。这书还出示了课堂教学微课视频。 这书能够做为高等院校各技术专业的蜘蛛机器人设计教程,也可做为众多编程设计开发人员、发烧友的通过自学教材。

目录

  • 第1章Python概述
  • 1.1初识Python语言
  • 1.1.1Python语言简介
  • 1.1.2Python语言的特点
  • 1.1.3Python语言的应用范围
  • 1.2Python语言版本和开发环境
  • 1.2.1Python语言的版本
  • 1.2.2Python语言的实现
  • 1.2.3Python语言的集成开发环境
  • 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.1Python交互式帮助系统
  • 1.7.2Python文档
  • 1.7.3Python官网
  • 1.7.4Python扩展库索引
  • 1.8复习题
  • 1.9上机实践
  • 1.10案例研究: 安装和使用其他Python环境
  • 第2章Python语言基础
  • 2.1Python程序概述
  • 2.1.1引例
  • 2.1.2Python程序的构成
  • 2.2Python对象和引用
  • 2.2.1Python对象概述
  • 2.2.2使用字面量创建实例对象
  • 2.2.3使用类对象创建实例对象
  • 2.2.4数据类型
  • 2.2.5变量和对象的引用
  • 2.2.6Python是动态类型语言
  • 2.2.7Python是强类型语言
  • 2.2.8对象内存示意图
  • 2.2.9对象的值比较和引用判别
  • 2.2.10不可变对象和可变对象
  • 2.3标识符及其命名规则
  • 2.3.1标识符
  • 2.3.2保留关键字
  • 2.3.3Python预定义标识符
  • 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.4Python运算符
  • 2.6语句
  • 2.6.1Python语句
  • 2.6.2Python语句的书写规则
  • 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.5if语句的嵌套
  • 3.2.6if语句的典型示例代码
  • 3.2.7选择结构综合举例
  • 3.3循环结构
  • 3.3.1可迭代对象
  • 3.3.2range对象
  • 3.3.3for循环
  • 3.3.4while循环
  • 3.3.5循环的嵌套
  • 3.3.6break语句
  • 3.3.7continue语句
  • 3.3.8死循环
  • 3.3.9else子句
  • 3.3.10enumerate()函数和循环
  • 3.3.11zip()函数和循环
  • 3.3.12map()函数和循环
  • 3.3.13循环语句的典型示例代码
  • 3.3.14循环结构综合举例
  • 3.4复习题
  • 3.5上机实践
  • 3.6案例研究: 使用嵌套循环实现图像处理算法
  • 第4章常用内置数据类型
  • 4.1Python内置数据类型概述
  • 4.1.1数值数据类型
  • 4.1.2序列数据类型
  • 4.1.3集合数据类型
  • 4.1.4字典数据类型
  • 4.1.5NoneType、NotImplementedType和EllipsisType
  • 4.1.6其他数据类型
  • 4.2int类型
  • 4.2.1整型字面量
  • 4.2.2int对象
  • 4.2.3int对象的方法
  • 4.2.4整数的运算
  • 4.3float类型
  • 4.3.1浮点类型字面量
  • 4.3.2float对象
  • 4.3.3float对象的方法
  • 4.3.4浮点数的运算
  • 4.4complex类型
  • 4.4.1复数类型字面量
  • 4.4.2complex对象
  • 4.4.3complex对象的属性和方法
  • 4.4.4复数的运算
  • 4.5bool类型
  • 4.5.1布尔值字面量
  • 4.5.2bool对象
  • 4.5.3逻辑运算符
  • 4.6str类型
  • 4.6.1字符串字面量
  • 4.6.2字符串编码
  • 4.6.3转义字符
  • 4.6.4str对象
  • 4.6.5str对象的属性和方法
  • 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.1Python序列数据概述
  • 5.1.1数组
  • 5.1.2Python内置的序列数据类型
  • 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.4list对象的方法
  • 5.4.5列表解析表达式
  • 5.5字符串
  • 5.5.1字符串的序列操作
  • 5.5.2字符串编码
  • 5.5.3字符串的格式化
  • 5.6字节序列
  • 5.6.1bytes常量
  • 5.6.2创建bytes对象
  • 5.6.3创建bytearray对象
  • 5.6.4bytes和bytearray的序列操作
  • 5.6.5字节编码和解码
  • 5.7复习题
  • 5.8上机实践
  • 5.9案例研究: 猜单词游戏
  • 第6章输入和输出
  • 6.1输入和输出概述
  • 6.2命令行参数
  • 6.2.1sys.argv与命令行参数
  • 6.2.2argparse模块和命令行参数解析
  • 6.3标准输入和标准输出函数
  • 6.3.1输入和输出函数
  • 6.3.2交互式用户输入
  • 6.3.3运行时提示输入密码
  • 6.4文件和文件对象
  • 6.4.1文件对象和open()函数
  • 6.4.2文件的打开、写入、读取和关闭
  • 6.4.3with语句和上下文管理协议
  • 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.5Python虚拟机捕获处理异常
  • 7.2.6使用try…except…else…finally语句捕获处理异常
  • 7.2.7捕获异常的顺序
  • 7.2.8finally块和发生异常后的处理
  • 7.2.9自定义异常类
  • 7.3断言处理
  • 7.3.1断言处理概述
  • 7.3.2assert语句和AssertionError类
  • 7.3.3启用/禁用断言
  • 7.4程序的基本调试方法
  • 7.4.1语法错误的调试
  • 7.4.2运行时错误的调试
  • 7.4.3逻辑错误的调试
  • 7.5使用logging模块输入日志
  • 7.5.1logging模块概述
  • 7.5.2logging的配置和使用
  • 7.6复习题
  • 7.7上机实践
  • 7.8案例研究: 使用调试器调试Python程序
  • 第8章函数和函数式编程
  • 8.1函数概述
  • 8.1.1函数的基本概念
  • 8.1.2函数的功能
  • 8.1.3Python中函数的分类
  • 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.1return语句和函数返回值
  • 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.2eval()函数
  • 8.7.3exec()函数
  • 8.7.4compile()函数
  • 8.8Python函数式编程基础
  • 8.8.1作为对象的函数
  • 8.8.2高阶函数
  • 8.8.3map()函数
  • 8.8.4filter()函数
  • 8.8.5Lambda表达式和匿名函数
  • 8.8.6operator模块和操作符函数
  • 8.8.7functools.reduce()函数
  • 8.8.8偏函数
  • 8.8.9sorted()函数
  • 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.10range可迭代对象
  • 9.8.11map迭代器和itertools.starmap迭代器
  • 9.8.12filter迭代器和itertools.filterfalse迭代器
  • 9.8.13zip迭代器和itertools.zip_longest迭代器
  • 9.8.14enumerate迭代器
  • 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.1Color类
  • 9.9.2Histogram类
  • 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.2API设计
  • 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.3dir()函数
  • 10.6名称空间与名称查找顺序
  • 10.6.1名称空间概述
  • 10.6.2名称查找顺序
  • 10.6.3顶层模块和__name__变量
  • 10.6.4Python解释器
  • 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.3Python语言提供的查找算法
  • 11.3排序算法
  • 11.3.1冒泡排序法
  • 11.3.2选择排序法
  • 11.3.3插入排序法
  • 11.3.4归并排序法
  • 11.3.5快速排序法
  • 11.3.6Python语言提供的排序算法
  • 11.4常用数据结构
  • 11.4.1数据结构概述
  • 11.4.2常用数据结构概述
  • 11.4.3Python中的collections模块
  • 11.5数组
  • 11.5.1列表和数组
  • 11.5.2array.array对象和数组
  • 11.6栈和队列
  • 11.6.1栈的实现: 使用列表
  • 11.6.2deque对象
  • 11.6.3deque作为栈
  • 11.6.4deque作为队列
  • 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.10defaultdict对象
  • 11.8.11OrderedDict对象
  • 11.8.12ChainMap对象
  • 11.8.13Counter对象
  • 11.9collections模块的其他数据结构
  • 11.9.1namedtuple对象
  • 11.9.2UserDict、UserList和UserString对象
  • 11.10应用举例
  • 11.10.1去除列表中的重复项
  • 11.10.2基于字典的通讯录
  • 11.11复习题
  • 11.12上机实践
  • 11.13案例研究: 程序运行时间度量分析
  • 第12章图形用户界面
  • 12.1图形用户界面概述
  • 12.1.1tkinter
  • 12.1.2其他GUI库简介
  • 12.2tkinter概述
  • 12.2.1tkinter模块
  • 12.2.2图形用户界面的构成
  • 12.2.3框架和GUI应用程序类
  • 12.2.4tkinter主窗口
  • 12.3几何布局管理器
  • 12.3.1pack几何布局管理器
  • 12.3.2grid几何布局管理器
  • 12.3.3place几何布局管理器
  • 12.4事件处理
  • 12.4.1事件类型
  • 12.4.2事件绑定
  • 12.4.3事件处理函数
  • 12.5常用组件
  • 12.5.1Label
  • 12.5.2LabelFrame
  • 12.5.3Button
  • 12.5.4Message
  • 12.5.5Entry
  • 12.5.6Text
  • 12.5.7Radiobutton
  • 12.5.8Checkbutton
  • 12.5.9Listbox
  • 12.5.10OptionMenu
  • 12.5.11Scale
  • 12.5.12Toplevel
  • 12.5.13ttk子模块控件
  • 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.1wxPython概述
  • 12.8.2安装wxPython库
  • 12.8.3wxPython应用程序的基本架构
  • 12.8.4使用wxPython开发简易文本编辑器
  • 12.9复习题
  • 12.10上机实践
  • 12.11案例研究: 简易图形用户界面计算器
  • 第13章图形绘制
  • 13.1Python绘图模块概述
  • 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.2turtle模块概述
  • 13.3.3绘制正方形
  • 13.3.4绘制多边形
  • 13.3.5绘制圆形螺旋
  • 13.3.6递归图形
  • 13.3.7海龟绘图的应用实例
  • 13.4基于Matplotlib模块的绘图
  • 13.4.1Matplotlib模块概述
  • 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.2math模块和数学函数
  • 14.2.1math模块的API
  • 14.2.2math模块应用举例
  • 14.3cmath模块和复数数学函数
  • 14.4random模块和随机函数
  • 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.1StringIO和内存文本文件的操作
  • 16.5.2BytesIO和内存二进制文件的操作
  • 16.6文件的压缩和解压缩
  • 16.7CSV格式文件的读取和写入
  • 16.7.1csv.reader对象和CSV文件的读取
  • 16.7.2csv.writer对象和CSV文件的写入
  • 16.7.3csv.DictReader对象和CSV文件的读取
  • 16.7.4csv.DictWriter对象和CSV文件的写入
  • 16.7.5CSV文件格式化参数和Dialect对象
  • 16.8输入重定向和管道
  • 16.8.1FileInput对象
  • 16.8.2fileinput模块的函数
  • 16.8.3输入重定向
  • 16.9对象序列化
  • 16.9.1对象序列化概述
  • 16.9.2pickle模块和对象序列化
  • 16.9.3json模块和JSON格式数据
  • 16.10复习题
  • 16.11上机实践
  • 16.12案例研究: 百度音乐批量下载器
  • 第17章数据库访问
  • 17.1数据库基础
  • 17.1.1数据库的概念
  • 17.1.2关系数据库
  • 17.2Python数据库访问模块
  • 17.2.1通用数据库访问模块
  • 17.2.2专用数据库访问模块
  • 17.2.3SQLite数据库和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.2TCP/IP协议简介
  • 18.1.3IP地址和域名
  • 18.1.4统一资源定位器
  • 18.2基于socket的网络编程
  • 18.2.1socket概述
  • 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.9UDP程序: 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.2Python语言与并行处理相关模块
  • 19.2基于线程的并发处理
  • 19.2.1threading模块概述
  • 19.2.2使用Thread对象创建线程
  • 19.2.3自定义派生于Thread的对象
  • 19.2.4线程加入
  • 19.2.5用户线程和daemon线程
  • 19.2.6Timer线程
  • 19.2.7基于原语锁的简单同步
  • 19.2.8基于条件变量的同步和通信
  • 19.2.9基于queue模块中队列的同步
  • 19.2.10基于Event的同步和通信
  • 19.3基于进程的并行计算
  • 19.3.1multiprocessing模块概述
  • 19.3.2创建和使用进程
  • 19.3.3进程的数据共享
  • 19.3.4进程池
  • 19.4基于线程池/进程池的并发和并行任务
  • 19.4.1concurrent.futures模块概述
  • 19.4.2使用ThreadPoolExecutor并发执行任务
  • 19.4.3使用ProcessPoolExecutor并发执行任务
  • 19.5基于asyncio的异步IO编程
  • 19.5.1asyncio模块概述
  • 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.1os.system()函数
  • 20.3.2os.popen()函数
  • 20.3.3subprocess模块
  • 20.4获取终端的大小
  • 20.5文件的压缩和解压缩
  • 20.5.1shutil模块支持的压缩和解压缩格式
  • 20.5.2make_archive()函数和文件压缩
  • 20.5.3unpack_archive()函数和文件解压缩
  • 20.6configparser模块和配置文件
  • 20.6.1INI文件及INI文件格式
  • 20.6.2ConfigParser对象和INI文件操作
  • 20.7应用举例
  • 20.7.1病毒扫描
  • 20.7.2文件目录树
  • 20.8复习题
  • 20.9上机实践
  • 20.10案例研究: 简易图形用户界面压缩软件
  • 参考文献

资源获取

相关资源

网友留言