新到貨2本75折
Python性能分析與優化

Python性能分析與優化

  • 定價:270
  • 優惠價:87235
  • 運送方式:
  • 臺灣與離島
  • 海外
  • 可配送點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
  • 可取貨點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
載入中...
  • 分享
 

內容簡介

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

Fernando Doglio,Globant公司軟件架構師。過去十年一直從事Web開發工作,期間使用了大多數前沿的技術,如 PHP、Ruby on Rails、MySQL、Python、Node.js、AngularJS、REST API等。Fernando喜歡鑽研新事物,他的GitHub賬戶每個月也會因此獲得回購。他還是開源擁護者,並通過網站 lookingforpullrequests.com來獲得人們的支持。Fernando另著有Pro REST API Development with Node.js。他的Twitter賬號是@deleteman123。
 

目錄

第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.2cProfile23
2.2.1工具的局限24
2.2.2支持的API24
2.2.3Stats類27
2.2.4性能分析示例30
2.3line_profiler41
2.3.1kernprof43
2.3.2kernprof注意事項43
2.3.3性能分析示例45
2.4小結53
第3章可視化——利用GUI理解性能分析數據54
3.1KCacheGrind/pyprof2calltree54
3.1.1安裝55
3.1.2用法55
3.1.3性能分析器示例:TweetStats57
3.1.4性能分析器示例:倒排索引60
3.2RunSnakeRun64
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.4ctypes90
4.4.1加載自定義ctypes90
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.1PyPy118
6.1.1安裝PyPy119
6.1.2JIT編譯器120
6.1.3沙盒121
6.1.4JIT優化122
6.1.5代碼示例124
6.2Cython126
6.2.1安裝Cython127
6.2.2建立一個Cython模塊127
6.2.3調用C語言函數129
6.2.4定義類型130
6.2.5定義函數類型131
6.2.6Cython示例133
6.2.7定義類型的時機選擇134
6.2.8限制條件138
6.3如何選擇正確的工具139
6.3.1什麼時候用Cython139
6.3.2什麼時候用PyPy139
6.4小結140
第7章用Numba、Parakeet和pandas實現極速數據處理141
7.1Numba141
7.1.1安裝142
7.1.2使用Numba144
7.2pandas工具151
7.2.1安裝pandas151
7.2.2用pandas做數據分析152
7.3Parakeet155
7.3.1安裝Parakeet156
7.3.2Parakeet是如何工作的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
 

詳細資料

  • ISBN:9787115424228
  • 規格:178頁 / 21 x 14.8 x 1.5 cm / 普通級 / 1-1
  • 出版地:中國

最近瀏覽商品

 

相關活動

  • 【其他】2024采實電子書全書系:春暖花開‧享閱讀,參展書單書85折起、任選3本79折
 

購物說明

溫馨提醒您:若您訂單中有購買簡體館無庫存/預售書或庫存於海外廠商的書籍,建議與其他商品分開下單,以避免等待時間過長,謝謝。

大陸出版品書況:因裝幀品質及貨運條件未臻完善,書況與台灣出版品落差甚大,封面老舊、出現磨痕、凹痕等均屬常態,故簡體字館除封面破損、內頁脫落...等較嚴重的狀態外,其餘所有商品將正常出貨。 

 

請注意,部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

調貨時間:若您購買海外庫存之商品,於您完成訂購後,商品原則上約45個工作天內抵台(若有將延遲另行告知)。為了縮短等待的時間,建議您將簡體書與其它商品分開訂購,以利一般商品快速出貨。 

若您具有法人身份為常態性且大量購書者,或有特殊作業需求,建議您可洽詢「企業採購」。 

退換貨說明 

會員所購買的商品均享有到貨十天的猶豫期(含例假日)。退回之商品必須於猶豫期內寄回。 

辦理退換貨時,商品必須是全新狀態與完整包裝(請注意保持商品本體、配件、贈品、保證書、原廠包裝及所有附隨文件或資料的完整性,切勿缺漏任何配件或損毀原廠外盒)。退回商品無法回復原狀者,恐將影響退貨權益或需負擔部分費用。 

訂購本商品前請務必詳閱商品退換貨原則

  • 翦商作者新作79折
  • 針灸匠張寶旬
  • 浪漫小說精選3本72折