-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Python性能分析與優化

( 簡體 字)
作者:[烏拉圭] 多格里奧 ( Fernando Doglio ) 類別:1. -> 程式設計 -> Python
譯者:
出版社:人民郵電出版社Python性能分析與優化 3dWoo書號: 44509
詢問書籍請說出此書號!

缺書
NT售價: 225

出版日:6/1/2016
頁數:178
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787115424228
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

內容簡介:

  本書首先介紹什么是性能分析,性能分析如何在項目開發周期中發揮作用,以及通過在項目中進行性能分析實踐能夠取得的效果。緊接著介紹分析性能所需的核心工具(性能分析器和可視化性能分析器)。然后介紹一系列性能優化技術,后一章會介紹一個具有實際意義的優化案例。
目錄:

第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
序: