python高性能擴展工具-cython教程0簡介

image.png

作者簡介

Philip Herron是一位專注于編譯器和虛擬機實現(xiàn)的開發(fā)人員。當他第一次被Google Summer of Code 2010錄取時,他利用Paul Biggar博士的靈感來優(yōu)化動態(tài)語言,以開發(fā)GCC前端編譯Python的POC。該項目引發(fā)了他對Python如何工作的濃厚興趣。

在2011年完成同一項目的一年后,Philip在Python基礎上申請了Cython,以深入了解標準的Python實現(xiàn)。通過這種方式,他開始利用Python的優(yōu)勢來控制系統(tǒng)中的邏輯,甚至添加更多高級接口,例如將Flask Web服務器嵌入到REST API中,而不需要編寫任何C代碼。

Philip目前是位于北愛爾蘭的Instil Software的軟件顧問。他使用嵌入式視頻流本地代碼開發(fā)移動應用程序。

前言

Cython是編寫Python的本機擴展就像在Python中編寫它們一樣簡單。你可以將Python模塊實現(xiàn)為純C代碼,無論出于何種目的,它都會像任何Python代碼一樣外觀和行為。

編寫本機模塊很難,并且需要有關如何正確使用垃圾收集器調用的知識,以避免內存泄漏。它還需要了解如何使用GIL,CPython和PyPy等的GIL還不同。它還需要了解內部傳遞給Python運行時的模塊結構和參數(shù)。Cython允許我們編寫和使用本機代碼,而無需了解有關Python運行時的任何信息。我們可以編寫幾乎純粹的Python代碼,我們操縱C/C++類型和類。我們可以在本機代碼和Python代碼之間來回調用。

Cython消除了復雜性和內在性,讓程序員專注于解決問題。

內容簡介

  • 第1章

Cython Will not Bite,介紹核心概念并演示Cython“HelloWorld”。 討論類型類型轉換。

  • 第2章,了解Cython

作為整本書的參考。 我們看看自定義C類型和函數(shù)指針。 在c中使用Python模塊。

  • 第3章,擴展應用程序

使用Python而不是C/C++的編寫本機Tmux命令。

  • 第4章,調試Cython

使用基于gdb的cygdb調試Cython代碼。

  • 第5章,高級Cython

Cython如何使用C++類和模板。

  • 第6章,延伸

簡要介紹相關項目和有趣的資料來源

面向讀者

本書面向喜歡使用Python的C/C++開發(fā)人員和想要實現(xiàn)Python的C/C++擴展的Python用戶。您可以展示如何使用Cython開發(fā)應用程序,重點是擴展現(xiàn)有系統(tǒng)。

擴展遺留系統(tǒng)可能很困難,但回報很大。 低級線程感知或I/O敏感操作用C實現(xiàn),用Python處理邏輯。 這種開發(fā)模式高效的并且可以很好地節(jié)約開發(fā)時間。

資源

本書英文版下載 Learning Cython Programming(2nd) - 2016

參考資料

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容