python 運行環境

Python 是一種半編譯半解釋型運行環境。首先,它會在模塊 "載入" 時將源碼編譯成字節碼 (Byte
Code)。然後,這些字節碼會被虛擬機在一個 "巨大" 的核心函數裏解釋執行。這是致使 Python 性
能較低的重要緣由,好在如今有了內置 Just-in-time 二次編譯器的 PyPy 可供選擇。
當虛擬機開始運行時,它經過初始化函數完成整個運行環境設置:緩存

  • 建立解釋器和主線程狀態對象,這是整個進程的根對象。
  • 初始化內置類型。數字、列表等類型都有專門的緩存策略須要處理。
  • 建立 __builtin__ 模塊,該模塊持有全部內置類型和函數。
  • 建立 sys 模塊,其中包含了 sys.path、modules 等重要的運⾏期信息。
  • 初始化 import 機制。
  • 初始化內置 Exception。
  • 建立 __main__ 模塊,準備運行所需的名字空間。
  • 經過 site.py 將 site-packages 中的第三方擴展庫添加到搜索路徑列表。
  • 執行入口py 文件。執行前會將 __main__.__dict__ 做爲名字空間傳遞進去。
  • 程序執行結束。
  • 執行清理操做,包括調用退出函數,GC 清理現場,釋放全部模塊等。
  • 終止進程。
相關文章
相關標籤/搜索