Python语言学习之文件格式后缀那些事:python和常见各种文件格式后缀介绍、使用方法之详细攻略
Python語言學習之文件格式后綴那些事:python和常見各種文件格式后綴介紹、使用方法之詳細攻略
?
?
?
目錄
常見各種文件格式后綴介紹
.pyc文件介紹 ?
.py文件介紹 ?
.pxd 文件
.pyd 文件
?
?
?
?
?
常見各種文件格式后綴介紹
.pyc文件介紹 ?
pyc文件,是python編譯后的字節碼(bytecode)文件。只要你運行了py文件,python編譯器就會自動生成一個對應的pyc字節碼文件。這個pyc字節碼文件,經過python解釋器,會生成機器碼運行(這也是為什么pyc文件可以跨平臺部署,類似于java的跨平臺,java中JVM運行的字節碼文件)。下次調用直接調用pyc,而不調用py文件。直到你這個py文件有改變。python解釋器會檢查pyc文件中的生成時間,對比py文件的修改時間,如果py更新,那么就生成新的pyc。
?
.py文件介紹 ?
Python 最常用格式就是 .py (另一較常用格式為 .pyw),由 python.exe 解釋,可在控制臺下運行。當然,也可用文本編輯器或其它專用 Python IDE (集成開發環境) 工具進行修改。常見情形是,用 Python 快速生成程序原型 (有時甚至是程序最終界面),然后對其中有特別要求的部分,用更合適的語言改寫;譬如:3D 游戲中的圖形渲染模塊,性能要求特別高,就可用 C/C++ 重寫,而后封裝為 Python 可調用的擴展類庫。需要注意的是,在您使用擴展類庫時可能需要考慮平臺問題,某些擴展類庫可能不提供跨平臺實現。此外,還可采用 Cython 為 Python 編寫 C 擴展。Cython 是編寫、包裹外部 C/C++ 庫的膠水代碼,將 CPython 嵌入現有應用程序、加速 Python 代碼執行的理想 C 模塊語言。
.pxd 文件
.pxd 文件是由 Cython 編程語言 "編寫" 而成的 Python 擴展模塊頭文件。.pxd 文件類似于 C 語言的 .h 頭文件,.pxd 文件中有 Cython 模塊要包含的 Cython 聲明 (或代碼段)。.pxd 文件可共享外部 C 語言聲明,也能包含 C 編譯器內聯函數。.pxd 文件還可為 .pyx 文件模塊提供 Cython 接口,以便其它 Cython 模塊可使用比 Python 更高效的協議與之進行通信。
? ?pyd文件是看不到的,Pyd實際上就是DLL文件,只是改了個后綴名而已!用OD,IDA之類的反編譯,和反編譯普通的DLL和EXE一樣。
可用 cimport 關鍵字將 .pxd 文件導入 .pyx 模塊文件中。
.pyx 文件
.pyx 文件是由 Cython 編程語言 "編寫" 而成的 Python 擴展模塊源代碼文件。.pyx 文件類似于 C 語言的 .c 源代碼文件,.pyx 文件中有 Cython 模塊的源代碼。不像 Python 語言可直接解釋使用的 .py 文件,.pyx 文件必須先被編譯成 .c 文件,再編譯成 .pyd (Windows 平臺) 或 .so (Linux 平臺) 文件,才可作為模塊 import 導入使用。
?
.pyd 文件
.pyd 文件是非 Python,由其它編程語言 "編寫-編譯" 生成的 Python 擴展模塊。Python 要導入 .pyd 文件,實際上是在 .pyd 文件中封裝了一個 module。在 python 中使用時,把它當成 module 來用就可以了,即:"import 路徑名.modulename" 即可,路徑名為 .pyd 文件所在的路徑。
基于 Qt/C++ 的 PyQt、PySide GUI (圖形用戶界面) 開發框架綁定,會為每個 Qt/C++ 庫 .dll 文件生成一個中間 .pyd 文件。PyWin32 項目分發包中,也存在很多 MicroSoft Windows OS 相應 .dll 文件的中間 .pyd 文件。
Cython 可將個人基于 Python 語言編寫的 Python 模塊編譯成具有 C 語言特性的 .pyd 文件。.pyd 文件有時也是用 D 語言按照一定格式編寫,編譯生成的二進制文件。
那么什么是 "D 語言" 呢?它是 C/C++ 的綜合進化版,不僅具有二者的全部優點,且整體性能更佳,但其抽象程度高。D 語言最初由 Digital Mars 公司就職的 Walter Bright 于 2001 年發布,意圖改進 C++ 語言。目前最新 D 語言被簡稱為 D2。最主要的 D 語言實現是 DMD。D 語言源自 C/C++,借鑒了眾多編程語言的特色和現代編譯器技術,融會貫通了設計者豐富的實踐經驗,使之具備了非凡的威力 ── 既有 C/C++ 語言的強大威力,又有 Python 和 Ruby 的開發效率。它集眾多系統級編程所需的功能于一身,例如垃圾回收、手工內存操作、契約式設計、高級模板技術、內嵌匯編、內置單元測試、Mixin 風格多繼承、類 Java 包管理機制、內置同步機制、內建基本運行時信息。
Python 的 .py 與 Cython 的 .pxd .pyx .pyd 文件格式之間的主要區別
?
?
?
總結
以上是生活随笔為你收集整理的Python语言学习之文件格式后缀那些事:python和常见各种文件格式后缀介绍、使用方法之详细攻略的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DL之Xception:Xception
- 下一篇: Python语言学习之常见语句命令那些事