幫助中心 | 我的帳號 | 關於我們

Python高性能編程

  • 作者:(美)戈雷利克//歐日沃爾德|責編:陳冀康|譯者:胡世傑//徐旭彬
  • 出版社:人民郵電
  • ISBN:9787115454898
  • 出版日期:2017/07/01
  • 裝幀:平裝
  • 頁數:331
人民幣:RMB 99.8 元      售價:
放入購物車
加入收藏夾

內容大鋼
    Python語言是一種腳本語言,其應用領域非常廣泛,包括數據分析、自然語言處理、機器學習、科學計算、推薦系統構建等。
    本書共有12章,圍繞如何進行代碼優化和加快實際應用的運行速度進行詳細講解。本書主要包含以下主題:電腦內部結構的背景知識、列表和元組、字典和集合、迭代器和生成器、矩陣和矢量計算、併發、集群和工作隊列等。最後,通過一系列真實案例展現了在應用場景中需要注意的問題。
    本書適合初級和中級Python程序員、有一定Python語言基礎想要得到進階和提高的讀者閱讀。

作者介紹
(美)戈雷利克//歐日沃爾德|責編:陳冀康|譯者:胡世傑//徐旭彬

目錄
第1章  理解高性能Python
  1.1  基本的電腦系統
    1.1.1  計算單元
    1.1.2  存儲單元
    1.1.3  通信層
  1.2  將基本的元素組裝到一起
  1.3  為什麼使用Python
第2章  通過性能分析找到瓶頸
  2.1  高效地分析性能
  2.2  Julia集合的介紹
  2.3  計算完整的Julia集合
  2.4  計時的簡單方法——列印和修飾
  2.5  用UNIX的time命令進行簡單的計時
  2.6  使用cProfile模塊
  2.7  用runsnakerun對cProfile的輸出進行可視化
  2.8  用line_profiler進行逐行分析
  2.9  用memory_profiler診斷內存的用量
  2.10  用heapy調查堆上的對象
  2.11  用dowser實時畫出變數的實例
  2.12  用dis模塊檢查CPython位元組碼
  2.13  在優化期間進行單元測試保持代碼的正確性
  2.14  確保性能分析成功的策略
  2.15  小結
第3章  列表和元組
  3.1  一個更有效的搜索
  3.2  列表和元組
    3.2.1  動態數組:列表
    3.2.2  靜態數組:元組
  3.3  小結
第4章  字典和集合
  4.1  字典和集合如何工作
    4.1.1  插入和獲取
    4.1.2  刪除
    4.1.3  改變大小
    4.1.4  散列函數和熵
  4.2  字典和命名空間
  4.3  小結
第5章  迭代器和生成器
  5.1  無窮數列的迭代器
  5.2  生成器的延遲估值
  5.3  小結
第6章  矩陣和矢量計算
  6.1  問題介紹
  6.2  Python列表還不夠嗎
  6.3  內存碎片
    6.3.1  理解perf
    6.3.2  根據perf輸出做出抉擇
    6.3.3  使用numpy
  6.4  用numpy解決擴散問題
    6.4.1  內存分配和就地操作

    6.4.2  選擇優化點:找到需要被修正的地方
  6.5  numexpr:讓就地操作更快更簡單
  6.6  告誡故事:驗證你的「優化」(scipy)
  6.7  小結
第7章  編譯成C
  7.1  可能獲得哪種類型的速度提升
  7.2  JIT和AOT編譯器的對比
  7.3  為什麼類型檢查有助代碼更快運行
  7.4  使用C編譯器
  7.5  複習Julia集的例子
  7.6  Cython
    7.6.1  使用Cython編譯純Python版本
    7.6.2  Cython註解來分析代碼塊
    7.6.3  增加一些類型註解
  7.7  Shed Skin
    7.7.1  構建擴展模塊
    7.7.2  內存拷貝的開銷
  7.8  Cython和numpy
  7.9  Numba
  7.10  Pythran
  7.11  PyPy
    7.11.1  垃圾收集的差異
    7.11.2  運行PyPy並安裝模塊
  7.12  什麼時候使用每種工具
    7.12.1  其他即將出現的項目
    7.12.2  一個圖像處理單元(GPU)的注意點
    7.12.3  一個對未來編譯器項目的展望
  7.13  外部函數介面
    7.13.1  ctypes
    7.13.2  cffi
    7.13.3  f2py
    7.13.4  CPython模塊
  7.14  小結
第8章  併發
  8.1  非同步編程介紹
  8.2  串列爬蟲
  8.3  gevent
  8.4  tornado
  8.5  AsyncIO
  8.6  資料庫的例子
  8.7  小結
第9章  multiprocessing模塊
  9.1  multiprocessing模塊綜述
  9.2  使用蒙特卡羅方法來估算Pi
  9.3  使用多進程和多線程來估算Pi
    9.3.1  使用Python對象
    9.3.2  並行系統中的隨機數
    9.3.3  使用numpy
  9.4  尋找素數
  9.5  使用進程間通信來驗證素數

    9.5.1  串列解決方案
    9.5.2  Na ve Pool解決方案
    9.5.3  Less Na ve Pool解決方案
    9.5.4  使用Manager.Value作為一個標記
    9.5.5  使用Redis作為一個標記
    9.5.6  使用RawValue作為一個標記
    9.5.7  使用mmap作為一個標記
    9.5.8  使用mmap作為一個標記的終極效果
  9.6  用multiprocessing來共享numpy數據
  9.7  同步文件和變數訪問
    9.7.1  文件鎖
    9.7.2  給Value加鎖
  9.8  小結
第10章  集群和工作隊列
  10.1  集群的益處
  10.2  集群的缺陷
    10.2.1  糟糕的集群升級策略造成華爾街損失4.62億美元
    10.2.2  Skype的24小時全球中斷
  10.3  通用的集群設計
  10.4  怎樣啟動一個集群化的解決方案
  10.5  使用集群時避免痛苦的方法
  10.6  三個集群化解決方案
    10.6.1  為簡單的本地集群使用Parallel Python模塊
    10.6.2  使用IPython Parallel來支持研究
  10.7  為魯棒生產集群的NSQ
    10.7.1  隊列
    10.7.2  發布者訂閱者
    10.7.3  分散式素數計算器
  10.8  看一下其他的集群化工具
  10.9  小結
第11章  使用更少的RAM
  11.1  基礎類型的對象開銷高
  11.2  理解集合中的RAM使用
  11.3  位元組和Unicode的對比
  11.4  高效地在RAM中存儲許多文本
  11.5  使用更少RAM的竅門
  11.6  概率數據結構
    11.6.1  使用1位元組的Morris計數器來做近似計數
    11.6.2  K**小值
    11.6.3  布隆過濾器
    11.6.4  LogLog計數器
    11.6.5  真實世界的例子
第12章  現場教訓
  12.1  自適應實驗室(Adaptive Lab)的社交媒體分析(SoMA)
    12.1.1  自適應實驗室(Adaptive Lab)使用的Python
    12.1.2  SoMA的設計
    12.1.3  我們的開發方法論
    12.1.4  維護SoMA
    12.1.5  對工程師同行的建議
  12.2  使用RadimRehurek.com讓深度學習飛翔

    12.2.1  **佳時機
    12.2.2  優化方面的教訓
    12.2.3  總結
  12.3  在Lyst.com的大規模產品化的機器學習
    12.3.1  Python在Lyst的地位
    12.3.2  集群設計
    12.3.3  在快速前進的初創公司中做代碼評估
    12.3.4  構建推薦引擎
    12.3.5  報告和監控
    12.3.6  一些建議
  12.4  在Smesh的大規模社交媒體分析
    12.4.1  Python在Smesh中的角色
    12.4.2  平台
    12.4.3  高性能的實時字元串匹配
    12.4.4  報告、監控、調試和部署
  12.5  PyPy促成了成功的Web和數據處理系統
    12.5.1  先決條件
    12.5.2  資料庫
    12.5.3  Web應用
    12.5.4  OCR和翻譯
    12.5.5  任務分發和工作者
    12.5.6  結論
  12.6  在Lanyrd.com中的任務隊列
    12.6.1  Python在Lanyrd中的角色
    12.6.2  使任務隊列變高性能
    12.6.3  報告、監控、調試和部署
    12.6.4  對開發者同行的建議

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032