什麼是位元組碼?python位元組碼詳細介紹!
學習Python的過程中,大家經常聽到的就是Python原始碼檔案,其實還有另外一種型別的檔案,那就是Python位元組碼。那麼你知道什麼是Python位元組碼嗎?如何使用python位元組碼工作呢?如何訪問和理解Python位元組碼呢?我們一起來看看吧。
如何使用python位元組碼工作?
Python經常被稱為是一種解釋型語言 -- 一種原始碼在程式執行時被即時翻譯成原生CPU指令的語言 - 但這隻說對了一部分。與其他許多解釋型語言一樣,Python實際上將原始碼編譯為一組虛擬機器指令,Python的直譯器就是該虛擬機器的一個具體實現。這種跑在虛擬機器內部的中間格式被稱為“位元組碼”。
因此,Python留下的.pyc檔案不僅僅是原始碼的一個更快或最佳化版本; 實際上,它們是在程式執行時由Python的虛擬機器來執行的位元組碼指令。
Python虛擬機器內部
CPython使用的是基於棧的虛擬機器。也就是說,它完全圍繞著棧資料結構來執行(您可以將一項內容“壓入”棧,放到棧結構的“頂部”,或者從棧“頂部”“彈出”一項內容)。
如何訪問和理解Python位元組碼呢?
dis模組為Python位元組碼提供了一個反彙編程式,從而可以輕鬆獲取人為可讀的版本並查詢各種位元組碼指令。dis模組的文件涵蓋了相關內容,並提供了位元組碼指令以及它們的作用和引數的完整清單。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2761685/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python 位元組碼介紹Python
- 位元組碼詳解
- 機器碼和位元組碼分別介紹機器碼
- 位元組碼
- Java 位元組碼Java
- 位元組碼指令
- pyc位元組碼文字轉python程式碼Python
- python反編譯之位元組碼Python編譯
- 位元組碼基礎
- 詳解Android Gradle生成位元組碼流程AndroidGradle
- 位元組碼檔案結構詳解
- 死磕python位元組碼-手工還原python原始碼Python原始碼
- 什麼是整型?Python整型詳細介紹Python
- Android 位元組碼插樁Android
- JAVA動態位元組碼Java
- 【Java】JVM位元組碼分析JavaJVM
- 位元組碼檔案解剖
- 輕鬆看懂Java位元組碼Java
- 位元組碼底層分析String
- Java位元組碼指令表Java
- Java類轉位元組碼工具Java
- 淺談位元組碼增強技術系列1-位元組碼增強概覽
- 以高位元組地址為字地址是什麼
- 什麼是整型型別?Python整型詳細介紹型別Python
- 例項分析理解Java位元組碼Java
- Java位元組碼增強技術Java
- datetime是8個位元組?
- 開啟java語言世界通往位元組碼世界的大門——ASM位元組碼操作類庫JavaASM
- ASM位元組碼操作類庫:開啟java語言世界通往位元組碼世界的大門ASMJava
- ASM位元組碼操作類庫(開啟java語言世界通往位元組碼世界的大門)ASMJava
- 編碼、摘要和加密(一)——位元組編碼加密
- Java 動態性(4) – 位元組碼操作Java
- 從 Java 位元組碼到 ASM 實踐JavaASM
- Class檔案結構&位元組碼指令
- 位元組碼指令分析 ++i 和 i++
- 學習 Java 之 位元組碼驗證Java
- Dalvik 和 Java 位元組碼的比較Java
- Java程式碼如何檢視位元組碼及彙編碼Java