作 者:(美)米夏·戈雷利克,(美)伊恩·歐日沃爾德 著 張海龍 譯
定 價:119.8
出 版 社:人民郵電出版社
出版日期:2023年08月01日
頁 數:400
裝 幀:平裝
ISBN:9787115599476
1.基於Python 3編寫,教你如何有效找出計算密集型程序的性能瓶頸,加快代碼的執行速度。2.內容豐富實用,探索設計背後的基本理論,讓讀者對Python實現有更深入的認識。3.真實案例,易學易懂。對編程經驗豐富的Python程序員,本書將闡述如何充分利用多核體繫結構或集群,如何讓繫統在不喪失可靠性的情況下擴縮容。4.知識點繫統,邏輯清晰。通過本書,讀者將會更牢固地掌握NumPy、Cython和剖析器,學會同時管理多個I/O和計算操作。
●前言 xvii
第 1章 理解高性能Python 1
1.1 基本的計算機繫統 1
1.1.1 2
1.1.2 4
1.1.3 通信層 6
1.2 綜合考慮 8
1.3 為何使用Python 11
1.4 如何成為高性能程序員 13
1.4.1 很好實踐 14
1.4.2 對Notebook很好實踐的思考 15
1.4.3 重新發現工作的樂趣 16
第 2章 通過剖析找出瓶頸 17
2.1 高效地剖析 18
2.2 朱利亞集合簡介 19
2.3 計算整個朱利亞集合 22
2.4 簡單計時方法—print語句和裝飾器 25
2.5 使用UNIX命令time的簡單計時 27
2.6 使用模塊cProfile 29
2.7 使用SnakeViz可視化cProfile的輸出 34
2.8 使用line_profiler逐行剖析 35
2.9 使用memory_profiler診斷內存占用情況 40
2.10 使用PySpy查看既有進程 47
2.11 字節碼:幕後發生的情況 48
2.11.1 使用模塊dis查看CPython字節碼 48
2.11.2 復雜度隨方法而異 50
2.12 優化期間測試確保代碼正確 52
2.13 確保代碼剖析成功的策略 55
2.14 小結 56
第3章 組 57
3.1 更高效的查找方式 60
3.2 比較組 62
……
Python語言是一種腳本語言,應用領域非常廣泛,包括數據分析、自然語言處理、機器學習、科學計算、推薦繫統構建等。
本書共有12章,圍繞如何進行代碼優化和加快實際應用程序的運行速度進行講解,還介紹了如何解決CPU密集型問題、數據傳輸和內存密集型問題,如何通過移動數據、PyPy即時編譯器和異步I/O提升性能。本書主要包括以下內容:計算機原理、組、字典和集合、迭代器、Python模塊、並發性、集群計算等。最後,本書通過一繫列真實案例展現了在應用場景中使用Python時需要注意的問題。
(美)米夏·戈雷利克,(美)伊恩·歐日沃爾德 著 張海龍 譯
米夏·戈雷利克,Fast Forward Labs聯合創始人,致力於探討與機器學習研究和利用相關的倫理及現實問題。伊恩·歐日沃爾德,首席數據科學家兼團隊指導;PyData倫敦年會的組織者之一;負責運營位於倫敦的咨詢公司Mor Consulting Data Science;經常在國際會議上發表演講。