創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!
創(chuàng)新互聯(lián)網(wǎng)站建設(shè)由有經(jīng)驗(yàn)的網(wǎng)站設(shè)計(jì)師、開(kāi)發(fā)人員和項(xiàng)目經(jīng)理組成的專業(yè)建站團(tuán)隊(duì),負(fù)責(zé)網(wǎng)站視覺(jué)設(shè)計(jì)、用戶體驗(yàn)優(yōu)化、交互設(shè)計(jì)和前端開(kāi)發(fā)等方面的工作,以確保網(wǎng)站外觀精美、成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站易于使用并且具有良好的響應(yīng)性。python編譯代碼的方法?這個(gè)問(wèn)題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見(jiàn)到的。希望通過(guò)這個(gè)問(wèn)題能讓你收獲頗深。下面是小編給大家?guī)?lái)的參考內(nèi)容,讓我們一起來(lái)看看吧!
Python代碼在解釋執(zhí)行之前,是會(huì)被編譯成.pyc或者.pyo文件的,它們是中間字節(jié)碼表示的文件,之后Python虛擬機(jī)才會(huì)去解釋執(zhí)行它們。
1、pyc文件
pyc是一種二進(jìn)制文件,是由py文件經(jīng)過(guò)編譯后,生成的文件,是一種byte code,py文件變成pyc文件后,加載的速度有所提高。
而且pyc是一種跨平臺(tái)的字節(jié)碼,是由python的虛擬機(jī)來(lái)執(zhí)行的,這個(gè)是類似于JAVA或者.NET的虛擬機(jī)的概念。
pyc的內(nèi)容,是跟python的版本相關(guān)的,不同版本編譯后的pyc文件是不同的。
2、pyo文件
pyo是優(yōu)化編譯后的程序 python -O 源文件即可將源程序編譯為pyo文件。
3、把單個(gè)文件編譯成pyc
用如下代碼
import py_compile py_compile.compile(r'H:\game\test.py')
或者
python -m py_compile test.py
這樣會(huì)在test.py文件所在的目錄下,生成一個(gè)__pycache__(注意:這里目錄名前后有兩個(gè)下劃線)的目錄,并且其中存有一個(gè)test.cpython-35.pyc文件,這個(gè)pyc文件就是test.py編譯之后生成的文件。
4、把一個(gè)目錄下所有python源文件編譯pyc
一般來(lái)說(shuō),我們的工程都是在一個(gè)目錄下的,一般不會(huì)說(shuō)僅僅編譯一個(gè)py文件而已,而是需要把整個(gè)文件夾下的py文件都編譯為pyc文件,python又為了我們提供了另一個(gè)模塊:compileall 。使用方法如下:
import compileall compileall.compile_dir(r'/root/src')
也可以直接用命令行編譯一個(gè)目錄下的文件
python -m compileall /root/src/
這樣就會(huì)在/root/src目錄下生成一個(gè)新的目錄__pycache__,這個(gè)目錄的下面會(huì)存放所有的和python源代碼對(duì)應(yīng)的pyc文件
比如源代碼目錄結(jié)構(gòu)如下
/root/src |---test.py |---test2.py |---test3.py
編譯后目錄結(jié)構(gòu)會(huì)變成如下:
/root/src |---test.py |---test2.py |---test3.py |---__pycache__ |----test.cpython-35.pyc |----test2.cpython-35.pyc |----test3.cpython-35.pyc
感謝各位的閱讀!看完上述內(nèi)容,你們對(duì)python編譯代碼的方法大概了解了嗎?希望文章內(nèi)容對(duì)大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道。