Python如何執行程式-原理
阿新 • • 發佈:2018-12-19
Python是一門程式語言,也是一個名為直譯器的軟體包。
直譯器是程式碼與機器的計算機硬體之間的軟體邏輯層
Python直譯器是執行python的程式的程式,Python直譯器將讀取程式,並按照其中的命令執行,得出結果。
錄入的原始碼轉換為位元組碼,之後位元組碼在Python虛擬機器中執行
位元組碼
.pyc就是編譯過的.py,程式執行後會生成.pyc檔案在原始碼同目錄下
位元組碼可以提供執行速度,比起文字檔案中原始的原始碼語句,位元組碼執行速度快的多
不是機器二進位制程式碼,是特定於python的一種表現形式(這是其無法像C一樣快的原因)
PVM,python虛擬機器
PVM就是迭代執行位元組碼指令的一個大迴圈,一個接一個的完成操作。
他是python的執行引擎,表現為Python系統的一部分,並且是實際執行指令碼的元件。
Python不需要初始編譯階段,所有的事情都是在程式執行時發生的。即動態的程式設計體驗。
Python實現 :
CPython(標準實現)
JPython(Java)
IronPython(.Net)
凍結二進位制檔案:能夠將程式的位元組碼、PVM以及任何程式所需要的Python支援檔案捆綁在一起形成一個單獨的檔案包。實際結果會是一個單獨的可自行二進位制程式,如Windows中的exe。三種生成方式:py2exe,PyInstaller,freeze
Learning Python, Fourth Edition, by Mark Lutz.