Python的另外幾種語言實現(xiàn)
Python自身作為一門編程語言,它有多種實現(xiàn)。這里的實現(xiàn)指的是符合Python語言規(guī)范的Python解釋程序以及標準庫等。這些實現(xiàn)雖然實現(xiàn)的是同一種語言,但是彼此之間,特別是與CPython之間還是有些差別的。
下面分別列出幾個主要的實現(xiàn)。
1.CPython:這是Python的官方版本,使用C語言實現(xiàn),使用最為廣泛,新的語言特性一般也最先出現(xiàn)在這里。
CPython實現(xiàn)會將源文件(py文件)轉換成字節(jié)碼文件(pyc文件),然后運行在Python虛擬機上。
2.Jython:這是Python的Java實現(xiàn),相比于CPython,它與Java語言之間的互操作性要遠遠高于CPython和C語言之間的互操作性。
在Python中可以直接使用Java代碼庫,這使得使用Python可以方便地為Java程序寫測試代碼,更進一步,可以在Python中使用Swing等圖形庫編寫GUI程序。
Jython會將Python代碼動態(tài)編譯成Java字節(jié)碼,然后在JVM上運行轉換后的程序,這意味著此時Python程序與Java程序沒有區(qū)別,只是源代碼不一樣。
在Python 中寫一個類,像使用Java 類一樣使用這個類是很容易的事情。
你甚至可以把Jython 腳本靜態(tài)地編譯為Java 字節(jié)碼。
示例代碼:
from java.lang import System System.out.write('Hello World!\n')
3.Python for .NET:它實質上是CPython實現(xiàn)的.NET托管版本,它與.NET庫和程序代碼有很好的互操作性。
4.IronPython:不同于Python for .NET,它是Python的C#實現(xiàn),并且它將Python代碼編譯成C#中間代碼(與Jython類似),然后運行,它與.NET語言的互操作性也非常好。
5.PyPy:Python的Python實現(xiàn)版本,原理是這樣的,PyPy運行在CPython(或者其它實現(xiàn))之上,用戶程序運行在PyPy之上。它的一個目標是成為Python語言自身的試驗場,因為可以很容易地修改PyPy解釋器的實現(xiàn)(因為它是使用Python寫的)。
6.Stackless:CPython的一個局限就是每個Python函數(shù)調用都會產生一個C函數(shù)調用。 這意味著同時產生的函數(shù)調用是有限制的,因此Python難以實現(xiàn)用戶級的線程庫和復雜遞歸應用。一旦超越這個限制,程序就會崩潰。Stackless的Python實現(xiàn)突破了這個限制,一個C棧幀可以擁有任意數(shù)量的Python棧幀。這樣你就能夠擁有幾乎無窮的函數(shù)調用,并能支持巨大數(shù)量的線程。Stackless唯一的問題就是它要對現(xiàn)有的CPython解釋器做重大修改。所以它幾乎是一個獨立的分支。另一個名為Greenlets的項目也支持微線程。它是一個標準的C擴展,因此不需要對標準Python解釋器做任何修改。
相關文章
python實現(xiàn)愛奇藝登陸密碼RSA加密的方法示例詳解
這篇文章主要介紹了python實現(xiàn)愛奇藝登陸的密碼RSA加密的方法,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-05-05pandas實現(xiàn)DataFrame顯示最大行列,不省略顯示實例
今天小編就為大家分享一篇pandas實現(xiàn)DataFrame顯示最大行列,不省略顯示實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12Python+OpenCV實現(xiàn)相機標定的方法詳解
opencv中內置了張正友的棋盤格標定法,通過一些姿態(tài)各異的棋盤格圖像,可以標定相機的內外參數(shù),本文為大家介紹OpenCV進行相機標定的具體方法,希望對大家有所幫助2023-05-05詳解python百行有效代碼實現(xiàn)漢諾塔小游戲(簡約版)
這篇文章主要介紹了詳解python百行有效代碼實現(xiàn)漢諾塔小游戲(簡約版),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-10-10使用Python將數(shù)組的元素導出到變量中(unpacking)
最近工作中遇到一個問題,需要利用Python將數(shù)組(list)或元組(tuple)中的元素導出到N個變量中,現(xiàn)在將我實現(xiàn)的方法分享給大家,有需要的朋友們可以參考借鑒,下面來一起看看吧。2016-10-10