CPython介绍
CPython介紹
-
CPython是特指C語言實現(xiàn)的Python,就是原汁原味的Python。
之所以使用CPython這個詞,是因為Python還有一些其它的實現(xiàn),比如Jython,就是Java版的Python,還有燒腦的PyPy,使用Python再把Python實現(xiàn)了一遍。
當我們編寫Python代碼時,我們得到的是一個包含Python代碼的以.py為擴展名的文本文件。要運行代碼,就需要Python解釋器去執(zhí)行.py文件。
由于整個Python語言從規(guī)范到解釋器都是開源的,所以理論上,只要水平夠高,任何人都可以編寫Python解釋器來執(zhí)行Python代碼(當然難度很大)。事實上,確實存在多種Python解釋器。
-
CPython
當我們從Python官方網站下載并安裝好Python 3.5后,我們就直接獲得了一個官方版本的解釋器:CPython。這個解釋器是用C語言開發(fā)的,所以叫CPython。在命令行下運行python就是啟動CPython解釋器。
CPython是使用最廣的Python解釋器。教程的所有代碼也都在CPython下執(zhí)行。讓我們開始了解Cython,Cython語言是Python的一個超集,編譯成C語言,產生的性能提升可以從幾個百分點到幾個數(shù)量級,具體取決于手頭的任務。 對于受Python原生對象類型約束的工作,加速將不會很大。 但是對于數(shù)值操作,或任何不涉及Python自身內部的操作,收益可能是巨大的。
-
編譯Python到C
Python代碼可以直接調用C模塊。這些C模塊可以是通用的C庫或專門為Python工作的庫。Cython生成第二種類型的模塊:與Python內部對話的C庫,可以與現(xiàn)有的Python代碼綁定在一起。
Cython代碼在設計上看起來很像Python代碼。如果你給Cython編譯器提供了一個Python程序,它將會按原樣接受它,但是Cython的原生加速器都不會起作用。但是如果你用Cython的特殊語法來修飾Python代碼,那么Cython就可以用快速的C代替慢的Python對象。
總結
- 上一篇: dfs讲解+3例题
- 下一篇: js 手机号正则、身份证15位或者18位