什麼是python解釋器?
當我們寫Python程式碼時,我們得到的是一個包含Python程式碼的以.py為副檔名的文字檔。要運行程式碼,就需要Python解釋器去執行.py檔。
由於整個Python語言從規範到解釋器都是開源的,所以理論上,只要水平夠高,任何人都可以編寫Python解釋器來執行Python程式碼(當然難度很高)。事實上,確實存在多種Python解釋器。
CPython
當我們從Python官方網站下載並安裝好Python 2.7後,我們就直接獲得了一個官方版本的解釋器: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 2.7版本下運行。請務必在本地安裝CPython(也就是從Python官方網站下載的安裝程式)。
此外,教學還內嵌一個IPython的Web版本,用來在瀏覽器內練習執行一些Python程式碼。要注意兩者功能一樣,輸入的代碼一樣,但是提示符有所不同。另外,不是所有程式碼都能在Web版本的IPython中執行,出於安全原因,很多操作(例如檔案操作)是受限的,所以有些程式碼必須在本地環境執行程式碼。
相關推薦:《Python教學》
以上是什麼是python解譯器的詳細內容。更多資訊請關注PHP中文網其他相關文章!