怎樣進(jìn)行Python源代碼的編譯,相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。
十余年的平桂網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都全網(wǎng)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整平桂建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“平桂網(wǎng)站設(shè)計(jì)”,“平桂網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
在計(jì)算機(jī)語言中Python源代碼一般的情況下是不進(jìn)行編譯的,只是通過幾個(gè)文件就能運(yùn)用的。
我們一般使用這樣的命令運(yùn)行一個(gè)python程序:
C:\> python im.py
其中,im.py文件的內(nèi)容是:
#!/usr/bin/env python import mymodule mymodule.say(”hello”)
執(zhí)行這一命令后,Python解釋器其實(shí)并不一定會(huì)讀入mymodule.py文件,它會(huì)嘗試讀取mymodule.pyc文件或者mymodule.pyo文件。如果都失敗了,或者mymodule.py文件比mymodule.pyc/mymodule.pyo新,才轉(zhuǎn)而讀入mymodule.py文件。
Python只懂得解釋執(zhí)行字節(jié)碼,所以mymodule.py文件讀入后***件事就是先進(jìn)行編譯。編譯的結(jié)果會(huì)被嘗試保存到mymodule.pyc文件中。等一下會(huì)討論如何控制Python的編譯過程。
雖然與C++/Java這樣的靜態(tài)語言一樣,采用了編譯(compile)這個(gè)術(shù)語,實(shí)際情況還是有所不同的。首先,最明顯的一點(diǎn),Python源代碼編譯的最終結(jié)果不是機(jī)器碼,而是字節(jié)碼。Python的編譯實(shí)際上主要是進(jìn)行文法分析,生成一個(gè)抽象語法樹,然后轉(zhuǎn)儲(chǔ)成字節(jié)碼形式了事。
從上面的介紹可以發(fā)現(xiàn)Python的編譯與C++相去甚遠(yuǎn)。不過倒與Java有些相像,因?yàn)樗鼈兌忌勺止?jié)碼。憑良心說,Java的編譯過程比Python先進(jìn)很多。Java的解釋器在執(zhí)行Java字節(jié)碼的時(shí)候,會(huì)使用JIT,將循環(huán)操作等熱點(diǎn)轉(zhuǎn)化成為機(jī)器碼。所以有時(shí)候Java的性能能夠達(dá)到接近C++的級(jí)別。
Python缺少JIT并非故意所為,而是缺少人力資源。現(xiàn)在已經(jīng)有一個(gè)pysco的外部模塊,據(jù)說能大大提高Python代碼的速度,不過這個(gè)模塊還沒有進(jìn)入Python的官方代碼。
看完上述內(nèi)容,你們掌握怎樣進(jìn)行Python源代碼的編譯的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
當(dāng)前名稱:怎樣進(jìn)行Python源代碼的編譯
網(wǎng)址分享:http://chinadenli.net/article24/gohdce.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計(jì)、App開發(fā)、外貿(mào)網(wǎng)站建設(shè)、手機(jī)網(wǎng)站建設(shè)、標(biāo)簽優(yōu)化、網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)