大小:5.39M
更新时间:23-08-13
系统:Pc
Python性能分析与优化是一本Python代码分析与优化指导书籍,由web程序员多格里奥编著。本书首先介绍了什么是性能分析,性能分析如何在项目开发周期中发挥作用,以及通过在项目中进行性能分析实践能够取得的效果。紧接着开始介绍分析性能所需的核心工具(性能分析器和可视化性能分析器)。然后再介绍一系列的性能优化技术,最后在配有一个具有实际意义的优化案例,可以让读者很轻松的了解并掌握书中的知识点和诀窍。

Python性能分析与优化从基本的概念开始讲解,循序渐进地介绍高级的优化主题。首先介绍了Python的主流性能分析器,以及用于帮助理解性能分析结果的可视化工具。然后介绍了通用的性能优化方法和专门针对Python的性能优化方法,带你浏览该语言的主要结构,让你只需做一点改变,即可迅速改善代码的性能。最后还介绍了一些专门用于数据处理的程序库,教你如何正确地使用如何它们来完成更好的操作。

第1 章 性能分析基础 1 1.1 什么是性能分析 1 1.1.1 基于事件的性能分析 2 1.1.2 统计式性能分析 4 1.2 性能分析的重要性 5 1.3 性能分析可以分析什么 6 1.3.1 运行时间 6 1.3.2 瓶颈在哪里 8 1.4 内存消耗和内存泄漏 8 1.5 过早优化的风险 11 1.6 运行时间复杂度 12 1.6.1 常数时间——O(1) 12 1.6.2 线性时间——O(n) 12 1.6.3 对数时间——O(logn) 13 1.6.4 线性对数时间——O(nlogn) 14 1.6.5 阶乘时间——O(n!) 15 1.6.6 平方时间——O(n2) 16 1.7 性能分析最佳实践 18 1.7.1 建立回归测试套件 18 1.7.2 思考代码结构 18 1.7.3 耐心 18 1.7.4 尽可能多地收集数据 19 1.7.5 数据预处理 19 1.7.6 数据可视化 19 1.8 小结 21 第2 章 性能分析器 22 2.1 认识新朋友:性能分析器 22 2.2 cProfile 23 2.2.1 工具的局限 24 2.2.2 支持的API 24 2.2.3 Stats 类 27 2.2.4 性能分析示例 30 2.3 line_profiler 41 2.3.1 kernprof 43 2.3.2 kernprof 注意事项 43 2.3.3 性能分析示例 45 2.4 小结 53 第3 章 可视化——利用GUI 理解性能分析数据 54 3.1 KCacheGrind/pyprof2calltree 54 3.1.1 安装 55 3.1.2 用法 55 3.1.3 性能分析器示例:TweetStats 57 3.1.4 性能分析器示例:倒排索引 60 3.2 RunSnakeRun 64 3.2.1 安装 65 3.2.2 使用方法 65 3.2.3 性能分析示例:最小公倍数 66 3.2.4 性能分析示例:用倒排索引查询 68 3.3 小结 75 第4 章 优化每一个细节 76 4.1 函数返回值缓存和函数查询表 76 4.1.1 用列表或链表做查询表 79 4.1.2 用字典做查询表 80 4.1.3 二分查找 80 4.1.4 查询表使用案例 80 4.2 使用默认参数 84 4.3 列表综合表达式与生成器 85 4.4 ctypes 90 4.4.1 加载自定义ctypes 90 4.4.2 加载一个系统库 92 4.5 字符串连接 92 4.6 其他优化技巧 96 4.7 小结 98 第5 章 多线程与多进程 99 5.1 并行与并发 99 5.2 多线程 100 5.3 线程 101 5.3.1 用thread 模块创建线程 102 5.3.2 用threading 模块创建线程 106 5.4 多进程 112 5.5 小结 117 第6 章 常用的优化方法 118 6.1 PyPy 118 6.1.1 安装PyPy 119 6.1.2 JIT 编译器 120 6.1.3 沙盒 121 6.1.4 JIT 优化 122 6.1.5 代码示例 124 6.2 Cython 126 6.2.1 安装Cython 127 6.2.2 建立一个Cython 模块 127 6.2.3 调用C 语言函数 129 6.2.4 定义类型 130 6.2.5 定义函数类型 131 6.2.6 Cython 示例 133 6.2.7 定义类型的时机选择 134 6.2.8 限制条件 138 6.3 如何选择正确的工具 139 6.3.1 什么时候用Cython 139 6.3.2 什么时候用PyPy 139 6.4 小结 140 第7 章 用Numba、Parakeet 和pandas实现极速数据处理 141 7.1 Numba 141 7.1.1 安装 142 7.1.2 使用Numba 144 7.2 pandas 工具 151 7.2.1 安装pandas 151 7.2.2 用pandas 做数据分析 152 7.3 Parakeet 155 7.3.1 安装Parakeet 156 7.3.2 Parakeet 是如何工作的 156 7.4 小结 158 第8 章 付诸实践 159 8.1 需要解决的问题 159 8.1.1 从网站上抓取数据 159 8.1.2 数据预处理 162 8.2 编写初始代码 162 8.2.1 分析代码性能 168 8.2.2 数据分析代码的优化 172 8.3 小结 178
1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必下载pdf阅读器
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
应用信息
同类热门
热门标签
网友评论0人参与,0条评论
最新排行
新编实用五金手册电子版29.82M 随着国民经济的高速发展和科学技术的不断进步,我们正见证着新技术、新材料、新工艺和新产品的持续涌现,这些新颖的创新为五金行业带来了前所未有的机遇,各种功能的五金产品如雨后春笋般涌现出市场,特别是在进入新世纪之后,五金和机械等行业更是迎来了长足的发展。
查看
11g329-1/2/3图集12.02Mpdf高清完整版 11g329图集全套是一个包含了11g329-1、11g329-2和11g329-3的国家建筑标准设计图集,也是建筑物抗震构造详图的pdf高清完整版,由中国建筑标准设计研究院编制,中华人民共和国住房和城乡建设部发行,可以适用于多层和高层钢筋混凝土房
查看
深入浅出mysql第二版 pdf180.33M扫描版 深入浅出mysql数据库开发优化与管理维护(第2版),简称为深入浅出mysql第二版,是一本MySQL数据库使用指导指南,由唐汉明,翟振兴,关宝军三人共同编著。本书内容丰富翔实,从开发、管理和管理维护3个角度逐步深入,全面介绍MySQL数据库技术,
查看
oracle dba手记2数据库诊断案例与内部恢复实践34.8M盖国强pdf扫描版 oracle dba手记2是一本Oracle诊断案例和案例实践指南,全称叫做oracle dba手记2数据库诊断案例与内部恢复实践,是由数据库技术专家盖国强和爱好者崔华合著而成,集合了各行业DBA的工作经验与思考,包含了精心挑选的数据库诊断案例与数
查看
nosql数据库技术实战65.98M皮雄军 pdf扫描版 nosql数据库技术实战是一本NoSQL数据库技术实战书籍手册,本书是腾讯公司前资深后台工程师皮雄军呕心沥血之作,全书介绍NoSQL从基本操作到高级技术和核心原理,再到项目开发的所有重点知识,书中详细讲解了NoSQL的兴起原因、CAP理论、副本之间
查看
android ui设计42.82M android ui设计是一本Android UI设计指导书籍,由李维勇,杜亚杰,张以利和陈宇四人共同编著。全书以Android SDK KitKat 4.4为开发平台,以Eclipse为集成开发环境,并结合作者近年来在手机软件研发和教学中积累的经
查看
ruby入门权威经典13.76M于天恩pdf扫描版 ruby入门权威经典是一本Ruby新手入门必读书籍之一,由于天恩编著。全书内容丰富翔实,包含了必要的理论,但以实践为主,书中含有大量的案例,讲解由浅入深,先介绍概念然后再讲应用,具体内容包括ruby的环境配置、基础知识、高级知识,让读者可以更好的掌
查看
html5与css3权威指南第三版上册83.14M陆凌牛pdf扫描版html5与css3权威指南第三版是HTML5与css3领域公认的标杆之作,被读者誉为系统学习html5与css3的著作和Web前端工程师案头必备图书之一。全书由资深专家根据HTMl5和css3最新技术标准撰写,内容系统而全面,非常详细的讲解了HTML5
查看
actionscript 3.0 教程6.06Mpdf中文版 actionscript 3.0 教程是flash动画的脚本语言,如果你想要做好falsh交互动画或游戏,此as3.0教程你一定不能错过。另外小编一并附带了pdf福昕阅读器,方便用户即下即用。本款actionscript 3.0教程详细介绍了脚本的
查看
深入解析oracle.dba入门进阶与诊断案例88.47M盖国强pdf扫描版 深入解析oracle.dba入门进阶与诊断案例是一本Oracle数据库深度解析书籍,由盖国强编著。本书内容丰富翔实,从基础知识入手,再进行深入研究,结合性能调整、诊断案例实践,将Oracle知识全面、系统、深入地展现给读者。全书内容更涉及Oracl
查看