1.編譯型語言和解釋性語言
- 編譯型語言:在執行之前需要一個專門的編譯過程,把程序編譯成為機器語言的文件,運行時不需要重新翻譯,直接使用編譯的結果就行了。程序執行效率高,依賴編譯器,跨平台性差些。如C、C++、Delphi等
- 解釋性語言:源代碼不是直接翻譯成機器語言,而是先翻譯成中間代碼,再由解釋器對中間代碼進行解釋運行。比如Python/JavaScript / Perl /Shell等都是解釋型語言。所以運行速度相對於編譯型語言要慢
- 腳本語言也是解釋型語言。如javascript
2.python傳統運行方式
- Python解釋器:運行Python的程序
- Python字節碼:Python程序編譯后的所得到的底層形式,Python自動將字節碼保存為名為.pyc的文件。
- Python沒有build和make的步驟,代碼寫好后立即運行。
- Python是解釋型語言,運行的時候將程序翻譯成機器語言,所以運行速度相對於編譯型語言要慢其速度介於編譯語言和解釋語言之間)
2.過程
錄入的源碼轉換為字節碼->字節碼在PVM(Python虛擬機)中運行->代碼自動被編譯