图书介绍

Python Cookbook 第3版 中文版【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

Python Cookbook 第3版 中文版
  • (美)比斯利,(美)琼斯著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115379597
  • 出版时间:2015
  • 标注页数:684页
  • 文件大小:55MB
  • 文件页数:702页
  • 主题词:软件工具-程序设计-英文

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Python Cookbook 第3版 中文版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 数据结构和算法1

1.1 将序列分解为单独的变量1

1.2 从任意长度的可迭代对象中分解元素3

1.3 保存最后N个元素5

1.4 找到最大或最小的N个元素7

1.5 实现优先级队列9

1.6 在字典中将键映射到多个值上11

1.7 让字典保持有序13

1.8 与字典有关的计算问题14

1.9 在两个字典中寻找相同点15

1.10 从序列中移除重复项且保持元素间顺序不变17

1.11 对切片命名18

1.12 找出序列中出现次数最多的元素20

1.13 通过公共键对字典列表排序22

1.14 对不原生支持比较操作的对象排序23

1.15 根据字段将记录分组25

1.16 筛选序列中的元素26

1.17 从字典中提取子集29

1.18 将名称映射到序列的元素中30

1.19 同时对数据做转换和换算33

1.20 将多个映射合并为单个映射34

第2章 字符串和文本37

2.1 针对任意多的分隔符拆分字符串37

2.2 在字符串的开头或结尾处做文本匹配38

2.3 利用Shell通配符做字符串匹配40

2.4 文本模式的匹配和查找42

2.5 查找和替换文本45

2.6 以不区分大小写的方式对文本做查找和替换47

2.7 定义实现最短匹配的正则表达式48

2.8 编写多行模式的正则表达式49

2.9 将Unicode文本统一表示为规范形式50

2.10 用正则表达式处理Unicode字符52

2.11 从字符串中去掉不需要的字符53

2.12 文本过滤和清理54

2.13 对齐文本字符串57

2.14 字符串连接及合并59

2.15 给字符串中的变量名做插值处理62

2.16 以固定的列数重新格式化文本64

2.17 在文本中处理HTML和XML实体66

2.18 文本分词67

2.19 编写一个简单的递归下降解析器70

2.20 在字节串上执行文本操作80

第3章 数字、日期和时间83

3.1 对数值进行取整83

3.2 执行精确的小数计算85

3.3 对数值做格式化输出87

3.4 同二进制、八进制和十六进制数打交道89

3.5 从字节串中打包和解包大整数90

3.6 复数运算92

3.7 处理无穷大和NaN94

3.8 分数的计算96

3.9 处理大型数组的计算97

3.10 矩阵和线性代数的计算101

3.11 随机选择103

3.12 时间换算105

3.13 计算上周5的日期107

3.14 找出当月的日期范围108

3.15 将字符串转换为日期110

3.16 处理涉及到时区的日期问题112

第4章 迭代器和生成器114

4.1 手动访问迭代器中的元素114

4.2 委托迭代115

4.3 用生成器创建新的迭代模式116

4.4 实现迭代协议118

4.5 反向迭代121

4.6 定义带有额外状态的生成器函数122

4.7 对迭代器做切片操作123

4.8 跳过可迭代对象中的前一部分元素124

4.9 迭代所有可能的组合或排列127

4.10 以索引-值对的形式迭代序列129

4.11 同时迭代多个序列131

4.12 在不同的容器中进行迭代133

4.13 创建处理数据的管道134

4.14 扁平化处理嵌套型的序列137

4.15 合并多个有序序列,再对整个有序序列进行迭代139

4.16 用迭代器取代while循环140

第5章 文件和I/O142

5.1 读写文本数据142

5.2 将输出重定向到文件中145

5.3 以不同的分隔符或行结尾符完成打印145

5.4 读写二进制数据146

5.5 对已不存在的文件执行写入操作149

5.6 在字符串上执行I/O操作150

5.7 读写压缩的数据文件151

5.8 对固定大小的记录进行迭代152

5.9 将二进制数据读取到可变缓冲区中153

5.10 对二进制文件做内存映射155

5.11 处理路径名157

5.12 检测文件是否存在158

5.13 获取目录内容的列表159

5.14 绕过文件名编码161

5.15 打印无法解码的文件名162

5.16 为已经打开的文件添加或修改编码方式164

5.17 将字节数据写入文本文件166

5.18 将已有的文件描述符包装为文件对象167

5.19 创建临时文件和目录169

5.20 同串口进行通信171

5.21 序列化Python对象172

第6章 数据编码与处理177

6.1 读写CSV数据177

6.2 读写JSON数据181

6.3 解析简单的XML文档186

6.4 以增量方式解析大型XML文件188

6.5 将字典转换为XML192

6.6 解析、修改和重写XML194

6.7 用命名空间来解析XML文档196

6.8 同关系型数据库进行交互198

6.9 编码和解码十六进制数字201

6.10 Base64编码和解码202

6.11 读写二进制结构的数组203

6.12 读取嵌套型和大小可变的二进制结构207

6.13 数据汇总和统计218

第7章 函数221

7.1 编写可接受任意数量参数的函数221

7.2 编写只接受关键字参数的函数223

7.3 将元数据信息附加到函数参数上224

7.4 从函数中返回多个值225

7.5 定义带有默认参数的函数226

7.6 定义匿名或内联函数229

7.7 在匿名函数中绑定变量的值230

7.8 让带有N个参数的可调用对象以较少的参数形式调用232

7.9 用函数替代只有单个方法的类235

7.10 在回调函数中携带额外的状态236

7.11 内联回调函数240

7.12 访问定义在闭包内的变量242

第8章 类与对象246

8.1 修改实例的字符串表示246

8.2 自定义字符串的输出格式248

8.3 让对象支持上下文管理协议249

8.4 当创建大量实例时如何节省内存251

8.5 将名称封装到类中252

8.6 创建可管理的属性254

8.7 调用父类中的方法259

8.8 在子类中扩展属性263

8.9 创建一种新形式的类属性或实例属性267

8.10 让属性具有惰性求值的能力271

8.11 简化数据结构的初始化过程274

8.12 定义一个接口或抽象基类278

8.13 实现一种数据模型或类型系统281

8.14 实现自定义的容器287

8.15 委托属性的访问291

8.16 在类中定义多个构造函数296

8.17 不通过调用init来创建实例298

8.18 用Mixin技术来扩展类定义299

8.19 实现带有状态的对象或状态机305

8.20 调用对象上的方法,方法名以字符串形式给出311

8.21 实现访问者模式312

8.22 实现非递归的访问者模式317

8.23 在环状数据结构中管理内存324

8.24 让类支持比较操作327

8.25 创建缓存实例330

第9章 元编程335

9.1 给函数添加一个包装335

9.2 编写装饰器时如何保存函数的元数据337

9.3 对装饰器进行解包装339

9.4 定义一个可接受参数的装饰器341

9.5 定义一个属性可由用户修改的装饰器342

9.6 定义一个能接收可选参数的装饰器346

9.7 利用装饰器对函数参数强制执行类型检查348

9.8 在类中定义装饰器352

9.9 把装饰器定义成类354

9.10 把装饰器作用到类和静态方法上357

9.11 编写装饰器为被包装的函数添加参数359

9.12 利用装饰器给类定义打补丁362

9.13 利用元类来控制实例的创建364

9.14 获取类属性的定义顺序367

9.15 定义一个能接受可选参数的元类370

9.16 在*args和**kwargs上强制规定一种参数签名372

9.17 在类中强制规定编码约定375

9.18 通过编程的方式来定义类378

9.19 在定义的时候初始化类成员382

9.20 通过函数注解来实现方法重载384

9.21 避免出现重复的属性方法391

9.22 以简单的方式定义上下文管理器393

9.23 执行带有局部副作用的代码395

9.24 解析并分析Python源代码398

9.25 将Python源码分解为字节码402

第10章 模块和包406

10.1 把模块按层次结构组织成包406

10.2 对所有符号的导入进行精确控制407

10.3 用相对名称来导入包中的子模块408

10.4 将模块分解成多个文件410

10.5 让各个目录下的代码在统一的命名空间下导入413

10.6 重新加载模块415

10.7 让目录或zip文件成为可运行的脚本416

10.8 读取包中的数据文件417

10.9 添加目录到sys. path中418

10.10 使用字符串中给定的名称来导入模块420

10.11 利用import钩子从远端机器上加载模块421

10.12 在模块加载时为其打补丁439

10.13 安装只为自己所用的包441

10.14 创建新的Python环境442

10.15 发布自定义的包444

第11章 网络和Web编程446

11.1 以客户端的形式同HTTP服务交互446

11.2 创建一个TCP服务器450

11.3 创建一个UDP服务器454

11.4 从CIDR地址中生成IP地址的范围456

11.5 创建基于REST风格的简单接口458

11.6 利用XML-RPC实现简单的远端过程调用463

11.7 在不同的解释器间进行通信466

11.8 实现远端过程调用468

11.9 以简单的方式验证客户端身份472

11.10 为网络服务增加SSL支持474

11.11 在进程间传递socket文件描述符481

11.12 理解事件驱动型I/O486

11.13 发送和接收大型数组493

第12章 并发496

12.1 启动和停止线程496

12.2 判断线程是否已经启动499

12.3 线程间通信503

12.4 对临界区加锁508

12.5 避免死锁511

12.6 保存线程专有状态515

12.7 创建线程池517

12.8 实现简单的并行编程521

12.9 如何规避GIL带来的限制525

12.10 定义一个Actor任务528

12.11 实现发布者/订阅者消息模式532

12.12 使用生成器作为线程的替代方案536

12.13 轮询多个线程队列544

12.14 在UNIX上加载守护进程547

第13章 实用脚本和系统管理552

13.1 通过重定向、管道或输入文件来作为脚本的输入552

13.2 终止程序并显示错误信息553

13.3 解析命令行选项554

13.4 在运行时提供密码输入提示557

13.5 获取终端大小558

13.6 执行外部命令并获取输出558

13.7 拷贝或移动文件和目录560

13.8 创建和解包归档文件562

13.9 通过名称来查找文件563

13.10 读取配置文件565

13.11 给脚本添加日志记录568

13.12 给库添加日志记录571

13.13 创建一个秒表计时器573

13.14 给内存和CPU使用量设定限制575

13.15 加载Web浏览器576

第14章 测试、调试以及异常578

14.1 测试发送到stdout上的输出578

14.2 在单元测试中为对象打补丁579

14.3 在单元测试中检测异常情况583

14.4 将测试结果作为日志记录到文件中585

14.5 跳过测试,或者预计测试结果为失败586

14.6 处理多个异常587

14.7 捕获所有的异常589

14.8 创建自定义的异常591

14.9 通过引发异常来响应另一个异常593

14.10 重新抛出上一个异常595

14.11 发出告警信息596

14.12 对基本的程序崩溃问题进行调试598

14.13 对程序做性能分析以及计时统计600

14.14 让你的程序运行得更快603

第15章 C语言扩展610

15.1 利用ctypes来访问C代码612

15.2 编写简单的C语言扩展模块618

15.3 编写一个可操作数组的扩展函数622

15.4 在C扩展模块中管理不透明指针625

15.5 在扩展模块中定义并导出C API628

15.6 从C中调用Python633

15.7 在C扩展模块中释放GIL639

15.8 混合使用C和Python环境中的线程639

15.9 用Swig来包装C代码640

15.10 用Cython来包装C代码646

15.11 用Cython来高效操作数组652

15.12 把函数指针转换为可调用对象657

15.13 把以NULL结尾的字符串传给C库659

15.14 把Unicode字符串传递给C库663

15.15 把C字符串转换到Python中667

15.16 同编码方式不确定的C字符串打交道669

15.17 把文件名传给C扩展模块672

15.18 把打开的文件传给C扩展模块673

15.19 在C中读取文件型对象674

15.20 从C中访问可迭代对象677

15.21 排查段错误678

附录A补充阅读680

热门推荐