1. 程式人生 > >Python原始碼剖析[1] —— 編譯Python

Python原始碼剖析[1] —— 編譯Python

在中間的部分,可以看到Python的核心,直譯器(interpreter)。在直譯器中,箭頭的方向指示了Python執行時的資料流方向。其中Scanner對應詞法分析,將檔案輸入的Python原始碼或從命令列輸入的一行行Python程式碼切分為一個一個的tokenParser對應語法分析部分,在Scanner的分析結果上進行語法分析,建立抽象語法樹(AST);Compiler是根據建立的AST生成指令集合——Python位元組碼(byte code),就像Java編譯器和C#編譯器所做的那樣;最後由Code Evaluator來解釋並執行這些位元組碼。因此,Code Evaluator又可以被稱為執行引擎。