首頁 >後端開發 >Python教學 >python如何運行程式碼

python如何運行程式碼

(*-*)浩
(*-*)浩原創
2019-06-29 13:56:3315752瀏覽

python作為一種動態語言,其實是個解譯器軟體包。

python如何運行程式碼

當Python執行腳本時,在程式碼開始處理之前,Python也會執行一些步驟。 (推薦學習:Python影片教學

第一步是編譯成所謂的“字節碼”,如果Python進程擁有寫入權限,將把程式的字節碼保存為一個以.pyc為擴展名的文件, 如果Python無法在機器上寫入字節碼,程式仍然可以工作:字節碼將會在內存中生成並在程式結束時簡單地丟棄。一旦程式編譯成字節碼(或字節碼從已經存在的.pyc檔案中載入),之後的字節碼會送到通常稱為Python虛擬機器(Python VirtualMachine,簡稱為PVM)上來執行。

寫完的py文件,先翻譯成字節碼文件(隱藏後綴pyc),然後在用PVM(虛擬機器)把字節碼自動編譯,之後解釋到硬體。

如果已經形成過pyc文件,那麼你的py文件沒有改動,機器重新解釋的時候會跳過翻譯字節碼步驟,首先查看你的.py跟.pyc文件時間戳,如果沒有修改那麼直接執行pyc文件,否則會重新翻譯字節碼。

PVM不是一個獨立的程序,是Python的運作引擎,不需要安裝。事實上PVM就是迭代運行字節碼指令的一個大循環,一個接一個地完成操作。

因此Python具有更多的動態語言特性:在執行時,Python程式去建置並執行另一個Python程式是有可能的,而且往往是非常方便的。例如,eval和exec內建模組,能夠接受並執行包含Python程式碼的字串。使用以下程式碼可以查看add函數的字節碼:

import dis

def add(a,b):
    sum=a+b
    return sum

print(dis.dis(add))

更多Python相關技術文章,請造訪Python教學欄位進行學習!

以上是python如何運行程式碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn