2012-10-20 32 views
3

使用不能運行特定的.pyc文件的文件

import py_compile 
py_compile.compile('server.py') 

我得到在同一目錄下的文件.pyc文件在UNIX的工作Python文件編譯後,但是當我嘗試使用」運行此文件./ server.pyc'putty所有我得到的是亂碼作爲輸出,沒有真正發生。

所以問題是,如何正確編譯.py文件到.pyc文件以及如何運行這個.pyc文件?

PS:我做了測試編譯&運行一個基本的腳本,它的工作..

+2

有沒有直接執行源文件'.py'的好理由? –

回答

8

與C不同,編譯python文件不會生成可執行文件。您必須用Python解釋器解釋已編譯的Python代碼。

$ python 
>>> import py_compile 
>>> py_compile.compile('server.py') 
>>> ^D 
$ python ./server.pyc 

編譯Python代碼的唯一改變就是加載時間稍微少一點。 Python解釋器在加載代碼時已經編譯好了代碼,並且不需要很長時間。

+0

您的代碼中存在拼寫錯誤 –

+4

@MarwanAlsabbagh:然後修復它。你沒有告訴我它在哪裏,我不喜歡玩遊戲。 –

+0

@DietrichEpp謝謝!我知道這是一個古老的答案,但它仍然值得*方式*更多的選票,再次感謝幫助,真的讓我的一天。 – 2016-12-22 00:01:19

-2

您只需import server.py和server.pyc將會產生。

其次,你可以使用py_compile()模塊。這也適用。

執行:execfile('server.py')將工作。

也可以使用this從腳本運行pyc文件。

3

運行第一條命令生成server.pyc文件。然後第二個命令可以運行server.pyc模塊。在Python文檔中描述了-c option-m option

python -c "import server" 
python -m server