万本电子书0元读

万本电子书0元读

顶部广告

Python高性能编程(第2版)电子书

1.基于Python 3编写,教你如何有效找出计算密集型程序的性能瓶颈,加快代码的执行速度。 2.内容丰富实用,探索设计背后的基本理论,让读者对Python实现有更深的认识。 3.真实案例,易学易懂。对编程经验丰富的Python程序员,本书将阐述如何充分利用多核体系结构或集群,如何让系统在不丧失可靠性的情况下扩缩容。 4.知识系统,逻辑清晰。通过本书,读者将会更牢固地掌握NumPy、Cython和剖析器,学会同时管理多个I/O和计算操作。

售       价:¥

纸质售价:¥94.60购买纸书

78人正在读 | 0人评论 6.8

作       者:米夏•戈雷利克(Micha Gorelick)[美] 伊恩•欧日沃尔德(Ian Ozsvald) 著

出  版  社:人民邮电出版社有限公司

出版时间:2023-08-01

字       数:36.6万

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

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

为你推荐

  • 读书简介
  • 目录
  • 累计评论(3条)
  • 读书简介
  • 目录
  • 累计评论(3条)
Python语言是一种脚本语言,应用领域非常广泛,包括数据分析、自然语言处理、机器学习、科学计算、推荐系统构建等。 本书共有12章,围绕如何行代码优化和加快实际应用程序的运行速度行讲解,还介绍了如何解决CPU密集型问题、数据传输和内存密集型问题,如何通过移动数据、PyPy即时编译器和异步I/O提升性能。本书主要包括以下内容:计算机原理、列表和元组、字典和集合、迭代器、Python模块、并发性、集群计算等。最后,本书通过一系列真实案例展现了在应用场景中使用Python时需要注意的问题。<br/>【推荐语】<br/>1.基于Python 3编写,教你如何有效找出计算密集型程序的性能瓶颈,加快代码的执行速度。 2.内容丰富实用,探索设计背后的基本理论,让读者对Python实现有更深的认识。 3.真实案例,易学易懂。对编程经验丰富的Python程序员,本书将阐述如何充分利用多核体系结构或集群,如何让系统在不丧失可靠性的情况下扩缩容。 4.知识系统,逻辑清晰。通过本书,读者将会更牢固地掌握NumPy、Cython和剖析器,学会同时管理多个I/O和计算操作。<br/>【作者】<br/>米夏·戈雷利克,Fast Forward Labs联合创始人,致力于探讨与机器学习研究和利用相关的伦理及现实问题。 伊恩·欧日沃尔德,首席数据科学家兼团队指导;PyData伦敦年会的组织者之一;负责运营位于伦敦的咨询公司Mor Consulting Data Science;经常在国际会议上发表演讲。<br/>
目录展开

内容提要

O'Reilly Media,Inc.介绍

业界评论

前 言

适合的读者

不适合的读者

涵盖的内容

Python 3

从Python 2.7升级到Python 3

许可

保留署名

勘误和反馈

排版约定

使用示例代码

致谢

服务与支持

第1章 理解高性能Python

1.1 基本的计算机系统

1.2 综合考虑

1.3 为何使用Python

1.4 如何成为高性能程序员

第2章 通过剖析找出瓶颈

2.1 高效地剖析

2.2 朱利亚集合简介

2.3 计算整个朱利亚集合

2.4 简单计时方法——print语句和装饰器

2.5 使用UNIX命令time的简单计时

2.6 使用模块cProfile

2.7 使用SnakeViz可视化cProfile的输出

2.8 使用line_profiler逐行剖析

2.9 使用memory_profiler诊断内存占用情况

2.10 使用PySpy查看既有进程

2.11 字节码:幕后发生的情况

2.12 优化期间使用单元测试确保代码正确

2.13 确保代码剖析成功的策略

2.14 小结

第3章 列表和元组

3.1 更高效的查找方式

3.2 比较列表和元组

3.3 小结

第4章 字典和集合

4.1 字典和集合的工作原理

4.2 字典和名称空间

4.3 小结

第5章 迭代器和生成器

5.1 无穷数列迭代器

5.2 延迟执行生成器

5.3 小结

第6章 矩阵和向量计算

6.1 问题简介

6.2 Python列表不够好吗

6.3 内存碎片

6.4 使用numpy解决扩散问题

6.5 numexpr:让你能够更快、更轻松地执行就地操作

6.6 警示故事:对优化进行验证(scipy)

6.7 从矩阵优化获得的经验教训

6.8 Pandas

6.9 小结

第7章 编译成C代码

7.1 速度提升方法

7.2 JIT编译器和AOT编译器

7.3 为何类型信息有助于提高代码运行速度

7.4 使用C语言编译器

7.5 回顾朱利亚集合示例

7.6 Cython

7.7 pyximport

7.8 Cython和numpy

7.9 Numba

7.10 PyPy

7.11 速度提升小结

7.12 各种技术的适用场景

7.13 图形处理单元

7.14 语言交互接口

7.15 小结

第8章 异步I/O

8.1 异步编程简介

8.2 async/await的工作原理

8.3 兼具CPU密集型和I/O密集型的问题

8.4 小结

第9章 模块multiprocessing

9.1 模块multiprocessing概述

9.2 使用蒙特卡罗方法估算圆周率

9.3 使用进程和线程估算圆周率

9.4 查找素数

9.5 使用进程间通信验证素数

9.6 使用multiprocessing共享numpy数据

9.7 同步文件和变量访问

9.8 小结

第10章 集群和作业队列

10.1 集群的优点

10.2 集群的缺点

10.3 常见的集群设计

10.4 如何启动集群解决方案

10.5 使用集群时如何避免麻烦

10.6 两种集群解决方案

10.7 使用NSQ打造健壮的生产集群

10.8 其他集群工具

10.9 Docker

10.10 小结

第11章 减少内存占用量

11.1 基本类型对象的开销很高

11.2 理解集合占用的内存

11.3 比较字节和Unicode

11.4 在内存中高效地存储大量文本

11.5 使用scikit-learn FeatureHasher进行文本建模

11.6 DictVectorizer和FeatureHasher简介

11.7 SciPy稀疏矩阵

11.8 减少内存占用量的技巧

11.9 概率数据结构

第12章 实战经验教训

12.1 使用特征引擎简化特征工程流水线

12.2 表现出色的数据科学团队

12.3 Numba

12.4 优化和思维

12.5 Adaptive Lab的社交媒体分析(2014)

12.6 RadimRehurek网站如何让深度学习快步如飞(2014)

12.7 Lyst网站可用于生产环境的大规模机器学习(2014)

12.8 Smesh的大规模社交媒体分析(2014)

12.9 使用PyPy成功地实现Web和数据处理系统(2014)

12.10 Lanyrd的任务队列(2014)

作者简介

封面介绍

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

发表评论

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

买过这本书的人还买过

读了这本书的人还在读

回顶部