1. 程式人生 > >11 個最佳的 Python 編譯器和直譯器

11 個最佳的 Python 編譯器和直譯器

原作:Archie Mistry

翻譯:豌豆花下貓@Python貓

原文:https://morioh.com/p/765b19f066a4

Python 是一門對初學者友好的程式語言,是一種多用途的、解釋性的和麵向物件的高階語言。

它擁有非常小的程式集,非常易於學習、閱讀和維護。其直譯器可在Windows、Linux 和 Mac OS 等多種作業系統上使用。它的可移植性和可伸縮性等特性使得它更加容易被運用。

Python 庫可用於以下用途:

  • Web 開發
  • 資料科學
  • 機器學習
  • 多媒體
  • 軟體開發
  • 像 Django 這樣的 Web 框架
  • GUI 應用

大多數極客認為 Python 是解釋性語言,但它也存在編譯過程。

編譯部分在程式碼執行時完成,並被刪除。然後編譯內容被轉換為位元組碼。通過機器和作業系統進一步擴充套件到 Python 虛擬機器。

本文重點介紹了適用於 Python 程式設計師的 11 種最佳的 Python 編譯器和直譯器。

最好的 Python 編譯器和直譯器

1.Brython

Brython 是一種流行的 Python 編譯器,可將 Python 轉換為 Javascript 程式碼。它提供對所有 Web 瀏覽器(包括一種手機 Web 瀏覽器)的支援。

它還支援最新的 Html5/CSS3 規範,可以使用流行的 CSS 框架,如 BootStrap3 和 LESS。

網址:https://brython.info

2. Pyjs

Pyjs 是一個豐富的 Internet 應用程式框架,也是一種輕量級的 Python 編譯器,可以從 Web 瀏覽器直接執行 Python 指令碼,可以從瀏覽器的 JS 控制檯執行程式。

它是從 Python 到 Javascript 的編譯器,可以使程式碼在 Web 瀏覽器上執行。它帶有 Ajax 框架和 Widget Set API。

網站:http://pyjs.org/

3. WinPython

它是為 Windows 作業系統設計的。它有一些 CPython 的特性。它預裝了一些針對資料科學和機器學習的流行庫,例如 Numpy、Pandas 和 Scipy。

它帶有 C/C++ 編譯器,大多數時候不會用到。除此之外,它只有 Python 編譯器,沒有其它包。

網址:https://winpython.github.io/

4.Skulpt

Skulpt 是 Python 的瀏覽器版實現,可以被新增到 HTML 程式碼中。

此 Python 編譯器使用 Javascript 編寫,在客戶端執行程式碼,無需其它外掛、加工或伺服器支援。

Skulpt 直譯器通過匯入方式,來執行儲存在網站上的 .py 檔案中的程式碼。

網站:https://skulpt.org

5.Shed Skin

該編譯器將 Python 標準庫模組編譯為 C++,它將靜態型別的 Python 程式轉換為很受限的優化的 C++ 程式碼。

通過將其內建的 Python 資料型別再次實現為自己的類集(可以用 C++ 高效實現),可以提高效能。

網站:https://en.wikipedia.org/wiki/Shed_Skin

6.Active Python

這是用於 Windows、Linux 和 Mac Os 的 Python 發行版,有免費的社群版。

它支援在許多平臺安裝,某些不被 Python-like 的 AIX 支援的平臺,它也支援。它提供了比 Python 更多的相容性。

網站:https://www.activestate.com/products/activepython/

7.Transcrypt

它是一種流行的將 Python 程式碼編譯為簡單易讀的 Java 程式碼的編譯器。它是一個輕量級的 Python 編譯器,支援對矩陣和向量運算進行切片。

Transcrypt 也可以在 Node.js 上執行。分層模組、多重繼承和本地類給其添加了很多功能。

網站:http://www.transcrypt.org/

8. Nutika

這是一種原始碼到原始碼的 Python 編譯器,可以將 Python 原始碼轉換為 C/C++ 可執行程式碼。它會使用到許多 Python 庫和擴充套件模組。

它自帶 Anaconda,可用於建立資料科學和機器學習專案。

網站:http://nuitka.net/

9. Jython

它用 Java 編寫,可以在執行 JVM 的任何平臺上執行。Jython 將 Python程式碼編譯為 Java 位元組碼,從而做到跨平臺。

它可用於建立 Servelets、Swing、SWT 和 AWT 軟體包的解決方案。Jython 使用 CPython 之類的全域性直譯器鎖(GIL) 。

另外,你可以將 Java 類擴充套件到 Python 程式碼。

網址:https://www.jython.org

10. CPython

CPython 是預設的且使用最廣泛的 Python 編譯器。它是用 C 語言編寫的,並使用 GIL(全域性直譯器鎖),這使得併發 CPython 程序之間的通訊很困難。

CPython 中的編譯步驟包括:解碼、令牌化、解析、抽象語法樹和編譯。

網站:https://compilers.pydata.org/

11. IronPython

此版本的 Python 編譯器是在微軟的 .Net 框架和 Mono 上實現的。

它還提供了動態編譯和互動式控制檯。它使得安裝非常容易,並且具有跨平臺相容性。

它還具有標準庫和不同的模組,主要用於實現 .Net 框架的使用者介面庫。

網址:https://ironpython.net/

結論

Python 是一種為許多實現提供了可能的開發語言,例如 Python 到 Java,Python 到 Javascript 或其它。

Python 的這些編譯器有助於我們理解它是多麼的全能。

公眾號【Python貓】, 本號連載優質的系列文章,有喵星哲學貓系列、Python進階系列、好書推薦系列、技術寫作、優質英文推薦與翻譯等等,歡迎關注哦