自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Python源代碼的編譯的具體方案應用描述

開發(fā) 后端
Python源代碼的編譯的實際操作中我們通常會使用命令運行一個python程序。而Python源代碼的編譯是運用什么方案進行其程序?以下就是相關(guān)內(nèi)容的介紹。

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

我們一般使用這樣的命令運行一個python程序:

 

  1. C:\> python im.py 

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

 

  1. #!/usr/bin/env python  
  2. import mymodule  
  3. mymodule.say(”hello”)   

 

執(zhí)行這一命令后,Python解釋器其實并不一定會讀入mymodule.py文件,它會嘗試讀取mymodule.pyc文件或者mymodule.pyo文件。如果都失敗了,或者mymodule.py文件比mymodule.pyc/mymodule.pyo新,才轉(zhuǎn)而讀入mymodule.py文件。

Python只懂得解釋執(zhí)行字節(jié)碼,所以mymodule.py文件讀入后***件事就是先進行編譯。編譯的結(jié)果會被嘗試保存到mymodule.pyc文件中。等一下會討論如何控制Python的編譯過程。

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

從上面的介紹可以發(fā)現(xiàn)Python的編譯與C++相去甚遠。不過倒與Java有些相像,因為它們都生成字節(jié)碼。憑良心說,Java的編譯過程比Python先進很多。Java的解釋器在執(zhí)行Java字節(jié)碼的時候,會使用JIT,將循環(huán)操作等熱點轉(zhuǎn)化成為機器碼。所以有時候Java的性能能夠達到接近C++的級別。

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

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

 

責任編輯:佚名 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2010-03-22 17:12:21

Python VIM

2010-03-17 18:21:26

Python數(shù)據(jù)結(jié)構(gòu)

2010-03-18 10:28:00

Python整理亂碼

2010-04-06 09:48:33

Oracle性能

2010-08-12 16:10:45

DB2 Online

2010-09-26 13:05:58

2010-03-19 15:16:11

Python代碼

2010-05-12 09:42:24

MySQL 列值比較

2010-03-09 15:48:06

Python抓取

2010-07-15 13:22:28

2010-07-07 11:28:12

SQL Server索

2010-03-17 15:58:08

Python環(huán)境

2010-03-25 17:10:42

Python設置環(huán)境

2010-05-07 18:14:08

Oracle性能調(diào)整

2010-04-23 10:42:20

Oracle實現(xiàn)

2021-07-07 05:53:23

PythonPython 語法加密源代碼

2010-07-07 09:47:04

SQL Server索

2010-05-26 13:50:15

MySQL備份

2010-03-18 17:18:12

Python 中文亂碼

2009-04-03 08:28:39

點贊
收藏

51CTO技術(shù)棧公眾號