Python是如何編譯執行的
這裡的解釋執行是相對於編譯執行而言的。我們都知道,使用C/C++之類的編譯性語言編寫的程式,是需要從原始檔轉換成計算機使用的機器語言,經過連結器連結之後形成了二進位制的可執行檔案。執行該程式的時候,就可以把二進位制程式從硬碟載入到記憶體中並執行。
但是對於Python而言,python原始碼不需要編譯成二進位制程式碼,它可以直接從原始碼執行程式。當我們執行python檔案程式的時候,python直譯器將原始碼轉換為位元組碼,然後再由python直譯器來執行這些位元組碼。這樣,python就不用擔心程式的編譯,庫的連結載入等問題了。
對於python解釋語言,有以下3方面的特性:
每次執行都要進行轉換成位元組碼,然後再有虛擬機器把位元組碼轉換成機器語言,最後才能在硬體上執行。與編譯性語言相比,每次多出了編譯和連結的過程,效能肯定會受到影響。
由於不用關心程式的編譯和庫的連結等問題,開發的工作也就更加輕鬆啦。
python程式碼與機器底層更遠了,python程式更加易於移植,基本上無需改動就能在多平臺上執行。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/3137/viewspace-2837492/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- python如何編譯Python編譯
- 什麼是Python執行緒?Python執行緒如何建立?Python執行緒
- Java編譯和執行的命令Java編譯
- 編譯執行、解釋執行的一些思考編譯
- python2 反編譯pyinstaller打包的可執行exe檔案Python編譯
- 如何讓sublime編輯器執行python程式?Python
- 如何編譯執行HanLP自然語言處理包編譯HanLP自然語言處理
- python如何編譯成exePython編譯
- 編譯Android下可執行命令的FFmpeg編譯Android
- 執行時框架,編譯時框架框架編譯
- C程式從編譯到執行C程式編譯
- 提前編譯:AOT-Native Image 和執行時編譯 JIT編譯
- 在C,C++,java和python執行時直譯器和編譯器的區別C++JavaPython編譯
- 深入淺出JVM(七)之執行引擎的解釋執行與編譯執行JVM編譯
- SQL是如何執行的SQL
- Android編譯通過,執行編譯錯誤問題總結Android編譯
- 如何進行Apache的編譯安裝Apache編譯
- [譯] Python 的多執行緒與多程式Python執行緒
- c++是如何執行的C++
- sql更新是如何執行的?SQL
- C語言的編譯連結執行過程C語言編譯
- 如何編寫一個前端框架之三-程式碼執行沙箱(譯)前端框架
- Java Main 如何是如何被執行的?JavaAI
- Linux下編譯生成SO並進行呼叫執行Linux編譯
- Idea除錯Rocketmq原始碼編譯執行Idea除錯MQ原始碼編譯
- 譯—JavaScript是如何工作的(1):js引擎、執行時和呼叫棧的概述JavaScriptJS
- 如何編寫及執行JSJS
- 執行緒池中多餘的執行緒是如何回收的?執行緒
- sql查詢是如何執行的?SQL
- 17.Sql是如何執行的SQL
- 爬蟲代理是如何執行的?爬蟲
- 08 Windows批處理之執行編譯後的程式Windows編譯
- Notepad++編譯和執行C語言 (GCC)編譯C語言GC
- 從cmake解決clion編譯生成的可執行檔案(.exe)不可執行的問題編譯
- babel是如何編譯es6 class和extends的Babel編譯
- 瞭解JDK、JRE、JVM及Java程式的編譯與執行JDKJVMJava編譯
- 代理伺服器是如何執行的?伺服器
- 單執行緒的js是如何工作的執行緒JS