Python解譯器

Great-Fortune 討論專區 程式語言 Python 園地 Python解譯器

標籤: 

該主題包含 1 則回覆,有 1 個參與人,並且由  FrankDJWu6 年, 11 月 前 最後更新。

正在檢視 2 篇文章 - 1 至 2 (共計 2 篇)
  • 作者
    文章
  • #1142

    FrankDJWu
    參與者

    當我們編寫Python代碼時,我們得到的是一個包含Python代碼的以.py為副檔名的文字檔。要運行代碼,就需要Python解譯器去執行.py文件。

    由於整個Python語言從規範到解譯器都是開源的,所以理論上,只要水準夠高,任何人都可以編寫Python解譯器來執行Python代碼(當然難度很大)。事實上,確實存在多種Python解譯器。

    CPython

    當我們從Python官方網站下載並安裝好Python 3.5後,我們就直接獲得了一個官方版本的解譯器:CPython。這個解譯器是用C語言開發的,所以叫CPython。在命令列下運行python就是啟動CPython解譯器。

    CPython是使用最廣的Python解譯器。教程的所有代碼也都在CPython下執行。

    IPython

    IPython是基於CPython之上的一個互動式解譯器,也就是說,IPython只是在對話模式上有所增強,但是執行Python代碼的功能和CPython是完全一樣的。好比很多國產流覽器雖然外觀不同,但內核其實都是調用了IE。

    CPython用>>>作為提示符,而IPython用In [序號]:作為提示符。

    PyPy

    PyPy是另一個Python解譯器,它的目標是執行速度。PyPy採用JIT技術,對Python代碼進行動態編譯(注意不是解釋),所以可以顯著提高Python代碼的執行速度。

    絕大部分Python代碼都可以在PyPy下運行,但是PyPy和CPython有一些是不同的,這就導致相同的Python代碼在兩種解譯器下執行可能會有不同的結果。如果你的代碼要放到PyPy下執行,就需要瞭解PyPy和CPython的不同點。

    Jython

    Jython是運行在Java平臺上的Python解譯器,可以直接把Python代碼編譯成Java位元組碼執行。

    IronPython

    IronPython和Jython類似,只不過IronPython是運行在微軟.Net平臺上的Python解譯器,可以直接把Python代碼編譯成.Net的位元組碼。

    小結

    Python的解譯器很多,但使用最廣泛的還是CPython。如果要和Java或.Net平臺交互,最好的辦法不是用Jython或IronPython,而是通過網路調用來交互,確保各程式之間的獨立性。
    本教程的所有代碼只確保在CPython 3.5版本下運行。請務必在本地安裝CPython(也就是從Python官方網站下載的安裝程式)。

    #1153

    FrankDJWu
    參與者

    轉載自廖雪峰的官方網站

正在檢視 2 篇文章 - 1 至 2 (共計 2 篇)

抱歉,回覆主題必需先登入。