亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python是不是編譯型語言

發布時間:2020-11-23 11:15:27 來源:億速云 閱讀:184 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關Python是不是編譯型語言的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

Python 是編譯型語言還是解釋型語言?回答這個問題前,應該先弄清楚什么是編譯型語言,什么是解釋型語言。

所謂編譯執行就是源代碼經過編譯器編譯處理,生成目標機器碼,就是機器能直接運行的二進制代碼,下次運行時無需重新編譯。

不過它是針對特定CPU體系的,這些目標代碼只能在特定平臺執行,如果這個程序需要在另外一種 CPU 上面運行,這個代碼就必須重新編譯。

它不具備可移植性,但是執行速度快,C、C++這類語言屬于編譯型語言。

而解釋型語言是在代碼運行期間逐行翻譯成目標機器碼,下次執行時,還是需要逐行解釋,我們可以簡單認為 Java、Python 都是解釋型語言。

編譯型相當于廚師直接做好一桌子菜,顧客來了直接開吃,而解釋型就像吃火鍋,廚師把菜洗好,顧客需要自己動手邊煮邊吃。

效率上來說解釋型語言自然比不過編譯型語言,當然也不是絕對了,像 JIT 的效率就很高。

以上是對編譯型語言和解釋型語言的一個簡單粗暴的區分,但是 Python(這里主要是指CPython)并不是嚴格的解釋型語言;

因為 Python 代碼在運行前,會先編譯(翻譯)成中間代碼,每個 .py 文件將被換轉成 .pyc 文件,.pyc 就是一種字節碼文件,它是與平臺無關的中間代碼,不管你放在 Windows 還是 Linux 平臺都可以執行,運行時將由虛擬機逐行把字節碼翻譯成目標代碼。

我們安裝Python 時候,會有一個 Python.exe 文件,它就是 Python 解釋器,你寫的每一行 Python 代碼都是由它負責執行,解釋器由一個編譯器和一個虛擬機構成,編譯器負責將源代碼轉換成字節碼文件,而虛擬機負責執行字節碼,所以,解釋型語言其實也有編譯過程,只不過這個編譯過程并不是直接生成目標代碼,而是中間代碼(字節碼),然后再通過虛擬機來逐行解釋執行字節碼。

總結

Python代碼首先會編程一個字節碼文件,再由虛擬機逐行解釋,把每一行字節碼代碼翻譯成目標指令給CPU執行。

感謝各位的閱讀!關于Python是不是編譯型語言就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

沿河| 镇平县| 贵阳市| 平舆县| 镇雄县| 旅游| 博兴县| 息烽县| 江陵县| 乌鲁木齐市| 康乐县| 汾西县| 凤庆县| 兴山县| 根河市| 密云县| 大关县| 宣化县| 南漳县| 常州市| 巴中市| 余江县| 金阳县| 时尚| 涟源市| 青海省| 长兴县| 新宁县| 格尔木市| 太仆寺旗| 德安县| 大姚县| 南华县| 勐海县| 株洲市| 桐柏县| 新余市| 新昌县| 上饶县| 桦甸市| 息烽县|