日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Python源代碼的編譯的具體方案應(yīng)用描述

在計(jì)算機(jī)語(yǔ)言中Python源代碼一般的情況下是不進(jìn)行編譯的,只是通過(guò)幾個(gè)文件就能運(yùn)用的,以下的文章主要是通過(guò)Python源代碼的相關(guān)代碼來(lái)具體描述Python源代碼的編譯是如何進(jìn)行的。

我們一般使用這樣的命令運(yùn)行一個(gè)python程序:

 
 
  1. C:\> python im.py 

其中,im.py文件的內(nèi)容是:

 
 
  1. #!/usr/bin/env python  
  2. import mymodule  
  3. 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的編譯過(guò)程。

雖然與C++/Java這樣的靜態(tài)語(yǔ)言一樣,采用了編譯(compile)這個(gè)術(shù)語(yǔ),實(shí)際情況還是有所不同的。首先,最明顯的一點(diǎn),Python源代碼編譯的最終結(jié)果不是機(jī)器碼,而是字節(jié)碼。Python的編譯實(shí)際上主要是進(jìn)行文法分析,生成一個(gè)抽象語(yǔ)法樹,然后轉(zhuǎn)儲(chǔ)成字節(jié)碼形式了事。#t#

從上面的介紹可以發(fā)現(xiàn)Python的編譯與C++相去甚遠(yuǎn)。不過(guò)倒與Java有些相像,因?yàn)樗鼈兌忌勺止?jié)碼。憑良心說(shuō),Java的編譯過(guò)程比Python先進(jìn)很多。Java的解釋器在執(zhí)行Java字節(jié)碼的時(shí)候,會(huì)使用JIT,將循環(huán)操作等熱點(diǎn)轉(zhuǎn)化成為機(jī)器碼。所以有時(shí)候Java的性能能夠達(dá)到接近C++的級(jí)別。

Python缺少JIT并非故意所為,而是缺少人力資源?,F(xiàn)在已經(jīng)有一個(gè)pysco的外部模塊,據(jù)說(shuō)能大大提高Python代碼的速度,不過(guò)這個(gè)模塊還沒(méi)有進(jìn)入Python的官方代碼。

以上的文章就是對(duì)Python源代碼的編譯的實(shí)際操作步驟的部分介紹。


分享文章:Python源代碼的編譯的具體方案應(yīng)用描述
本文網(wǎng)址:http://www.5511xx.com/article/ccdpcjs.html