大小: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条评论
最新排行
11g101-1图集电子版4.91M官方pdf高清版 11g101-1图集,又简称为混凝土结构施工图11g101-1,官方全称为混凝土结构施工图平面整体表示方法制图规则和构造详图(现浇混凝土框架、剪力墙、梁、板),由中华人民共和国住房和城乡建设部批准,中国建筑标准设计研究院编制,可以替代03g101-
查看11g329-1/2/3图集12.01Mpdf高清完整版 11g329图集全套是一个包含了11g329-1、11g329-2和11g329-3的国家建筑标准设计图集,也是建筑物抗震构造详图的pdf高清完整版,由中国建筑标准设计研究院编制,中华人民共和国住房和城乡建设部发行,可以适用于多层和高层钢筋混凝土房
查看版式设计从入门到精通44.69M高清全彩版版式设计从入门到精通是一本广告版式设计入门书籍,由ArtTone视觉研究中心编著。本书内容共三篇设计篇、色彩篇、主题篇,集中探讨了版式设计的基础和关键问题。透过对各设计方向的版式设计作品的详细分析,希望能让读者更快掌握版式设计的基础技巧与更高的表现力。书
查看oracle dba手记4数据安全警示录44.4M盖国强pdf扫描版 oracle dba手记4,全称oracle dba手记4数据安全警示录,是一本Oracle数据库数据安全防范手册,由资深Oracle数据库盖国强编著。本书主要对数据安全的五大方面进行简要的分析和探讨,包括软件安全、备份安全、访问安全、防护安全和管
查看声学基础杜功焕pdf7.79M第二版声学基础第二版是一款介绍声学的基础理论图书,由杜功焕、朱哲民、龚秀芬著作,南京大学出版社出版出牌,全书系统地介绍了声学的基础理论,其中包括声的辐射、传播、接收与散射,并适当地介绍了近期活跃的非线性声学基础理论,具体包括质点振动学、 弹性体振动学、声波的基
查看windows程序设计第7版中文版14.84M电子版windows程序设计第7版中文版是专门为国内的Windows开发人员而提供的一个pdf电子版学习文件,同时由于这是国外一名作者进行编写分享的,因此原著是纯英文的,但为了更好的满足国人们的学习需求,所以小编带来的是经过专业团队进行翻译的一个简体中文版本,
查看Objective-C2.0Mac和ios开发实践指南38.25M克莱尔pdf扫描版 Objective-C2.0Mac和ios开发实践指南是一本Objective-C 2.0语言开发实践书籍,由美国MacOSx和iPhone开发专家Robert Clair编著。本书内容精练、可读性强、易于学习,是学习Objective-C2.0的
查看尼康d800使用说明书21.81Mpdf电子版尼康d800说明书是尼康官方针对尼康d800单反相机而开发的使用说明书,同时适用于d800和d800e,详细的介绍了相机的使用方法,包括如何快速开始指南,即时取景拍摄,动画即时取景,对焦,释放模式,iso感光度,曝光,白平衡,图像增强,闪光拍摄等等重要知
查看Oracle PL/SQL专家指南:高级PL/SQL解决方案的设计与开发37.16M哈德门pdf扫描版Oracle PL/SQL专家指南:高级PL/SQL解决方案的设计与开发是一本Oracle数据库操作指南,由美国程序员哈德门和麦克罗林共同编著。全书内容丰富翔实,主要讲解了统计表收集、PL/SQL优化器、SQL Trace、DBMS STATS及TKPR
查看正则表达式经典实例第2版43.18Mpdf高清扫描版正则表达式经典实例第2版是一本正则表达式学习教材,由美国程序员Jan Goyvaerts编著。本书内容丰富,为读者提供了100多个正则表达式的使用实例,来教会读者如何正确的使用正则表达式来处理数据和文本,并且能够熟练的掌握它们,从而避免发生代码错误而白白
查看iPhone游戏编程实例分享成功游戏开发人员的锦囊妙计55.98M马克pdf扫描版iPhone游戏编程实例分享成功游戏开发人员的锦囊妙计是一本ios游戏编程实例,由美国iphone软件开发设计师马克编著。本书汇集了独立iPhone游戏开发人员必知必会的知识,介绍了高效开发游戏的大量实用技巧。你可以利用这些技巧创建引人入胜的游戏体验!此
查看