亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python能擴展嗎

發布時間:2020-09-21 09:33:20 來源:億速云 閱讀:169 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關Python能擴展嗎,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

Python 具有高可擴展性,存在許多使用 C 語言或 Fortran 編寫擴展的方法。必要時,Python 代碼可以直接將這些擴展作為子例程來調用。這部分討論用于構建擴展的一些主要編譯器(絕對不是完整列表)。

Cython

Cython(不同于 CPython)既是指一種語言,也是指一種編譯器。Cython 語言是添加了 C 語言語法的 Python 語言的超集。Cython 可以在代碼段或完整函數中顯式釋放 GIL。變量和類屬性上的 C 類型聲明以及對 C 函數的調用都使用 C 語法。其余部分代碼則使用 Python 語法。通過這個混合的 Cython 代碼,Cython 編譯器可生成高效的 C 代碼。任何定期優化的 C/C++ 編譯器都可以編譯此 C 代碼,從而高度優化擴展的運行時代碼,性能接近于原生的 C 代碼性能。

Numba

Numba 是一個動態、即時 (JIT) 且可感知 NumPy 的 Python 編譯器。Numba 使用 LLVM 編譯器基礎架構,生成優化的機器代碼和從 Python 調用代碼的包裝器。與 Cython 不同,編碼使用常規的 Python 語言。Numba 可讀取來自裝飾器中所嵌入注釋的類型信息,并優化代碼。對于使用 NumPy 數據結構的程序,比如數組以及許多數學函數,它可以實現與 C 或 Fortran 語言類似的性能。NumPy 對線性代數和矩陣函數使用硬件加速,利用 LAPACK 和 BLAS 提供額外加速,大大提升了性能,參見 IBM 博客文章C、Julia、Python、Numba 和 Cython 在 LU 因式分解方面的速度比較。

除 CPU 以外,Numba 還能夠使用 GP-GPU 后端。Anaconda, Inc. 是 Python 某個主要發行版的幕后公司,該公司還開發了 Numba 和商業版的 Numba Pro。

Fortran to Python Interface Generator

Fortran to Python Interface Generator (F2Py) 起初為一個獨立的程序包,現在包含在 NumPy 中。F2Py 支持 Python 調用以 Fortran 編寫的數值例程,就好像它們是另一個 Python 模塊一樣。因為 Python 解釋器無法理解 Fortran 源代碼,所以 F2Py 以動態庫文件格式將 Fortran 編譯為本機代碼,這是一種共享對象,包含具有 Python 模塊接口的函數。因此,Python 可以直接將這些函數作為子例程來調用,以原生 Fortran 代碼的速度和性能來執行。

看完上述內容,你們對Python能擴展嗎有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

淳安县| 阿巴嘎旗| 沙田区| 巴彦县| 化隆| 嘉祥县| 军事| 科技| 肇庆市| 广丰县| 朝阳县| 临沧市| 江永县| 青铜峡市| 永泰县| 红原县| 满洲里市| 红安县| 郁南县| 贵德县| 林西县| 咸宁市| 获嘉县| 阆中市| 赤水市| 沙坪坝区| 伽师县| 大兴区| 建湖县| 肥城市| 东山县| 雷州市| 邵东县| 大英县| 辽阳县| 潼关县| 枣阳市| 双城市| 佛教| 宜宾县| 文成县|