2014-04-04 106 views
0

這裏有一個新手問題:使用PYC文件而不是PY

我有一個PY代碼並編譯它以創建一個.pyc。我想用這個pyc文件而不是PY。

我正在使用外部程序運行PY文件。當PY存在於文件夾中時,一切都很完美。然而,當我刪除PY文件,只需使用PYC我得到錯誤:

IOError: [Errno 2] No such file or directory: 'E:/data/test/tech.py' 

雖然我有一個tech.py​​c在同一folder.Any想法可能是這裏的問題躺在附近?

+1

您是否嘗試運行或導入它?無論如何,你是如何做到的? – aepsil0n

+0

@msvalkon我想你可以,看到http://stackoverflow.com/questions/9913193/is-it-possible-to-import-a-compiled-python-file – aepsil0n

+0

啊,我會重申。您*可以*導入'.pyc',但我無法理解可能帶來的好處。它認爲應該明確的是,與編譯語言不同,在編譯語言中,程序可以編譯成可執行的二進制文件並「無需擔心」地分發,python「.pyc」不能達到這個目的。 – msvalkon

回答

4

通常情況下,python不會被編譯。 .pyc文件只是一個性能優化,可以縮短加載時間。

Python正在查找.py文件,因爲它總是首先檢查它。如果.pyc文件比其對應的.py文件新,則它將使用.pyc文件。如果.py文件較新,它將創建一個新的.pyc文件。