2012-08-11 64 views
9

我一直在尋找通過SO一段時間,現在試圖想出一個答案,但由於我的編程經驗不足,我不明白的文檔很多,我也沒有足夠的信心實驗太多。如何將python.py文件轉換爲可執行文件以使用跨平臺?

任何人都可以用稍簡單的術語來描述我將如何使用像Py2exe,PyInstaller,cx_freeze等程序?我只想讓其他人(主要是朋友)能夠運行我的(簡單,純文本)程序,而無需自行下載python。如果有更簡單的方法來做到這一點,我會很高興知道這一點。

運行Vista 32位,蟒蛇2.7

+0

我可能應該指定 - 是的朋友,這根本不是商業用途。 – 2012-08-11 14:54:54

回答

10

有兩種截然不同的冷凍Python腳本來創建可執行文件的方式:

  1. 包裝的解釋和* pyc文件到一個exe文件容器。工具使用這種方法,如PyInstaller,Py2exe,cx_freeze
  2. 從Python源代碼創建本地代碼,通常使用將Python源代碼轉換爲C或C++代碼的中間步驟。這通過Shed-skinNuitka等工具完成。這樣的問題在於,這些工具並不總是支持Python的所有功能(例如,它們可能有一些打字限制等)。

您必須開始閱讀文檔。這些工具不僅僅是推式運行風格的工具,它們通常具有必須實現的一些配置(這可能是所有構建系統的問題,並且隨着項目的增長,鉤子的配置和數量也在增加)。

你可以從Py2exe tutorial和'hello-world'開始熟悉編譯是如何完成的。據我所知,這是實現目標的最簡單方法。

而最後一件事,不能創建跨平臺的原生可執行作爲其文件格式強烈操作系統和硬件相關

+0

我已經看過所有這三個文件,並試圖使用你已經提到的教程 - 我沒有運氣與教程,因爲它告訴我應該發生的不是,我發現其他文件很難理解。我很抱歉我很難,但我希望有人能夠以更簡單的方式提供解釋/指導。 – 2012-08-11 14:36:34

+0

@Ricochet_Bunny,對我來說py2exe教程是最簡單的解釋,你可能需要花更多的時間來捕捉它,沒有什麼是簡單的)。 – 2012-08-11 14:39:04

+0

好的,我會再試一次。唯一的原因是,我沒有得到同樣的結果,因爲我不知道爲什麼。 – 2012-08-11 14:53:57

3
  1. 下載py2exe
  2. 下載此msvcp90.dll
  3. 複製您FileCode.pymsvcp90.dll到C:\ Python27 \
  4. 在C:\ Python27 \創建新的文本文件,然後在其中輸入此代碼:
from distutils.core import setup 
import py2exe 
setup(console=['Avril.py']) 
  • 替換Avril.pyYourFileName.py
  • 將文件保存爲設置。TXT
  • 打開CMD和輸入:
  • CD C:\ Python27 \
    蟒SETUP.TXT py2exe

  • 現在請轉到C:\ Python27 \ dist \,並且有您的.exe。程序。
  • 來源:Manvir Singh

    0

    Python腳本可以直接執行,如shell腳本,通過將Python環境路徑在腳本文件的開頭。從而使上一個Python文件,雙擊運行它作爲一個腳本

    #!/usr/bin/env python3.5 
    

    的Python安裝程序自動關聯python.exe .py文件。擴展名也可以是.pyw,在這種情況下,通常出現的控制檯窗口被禁止。

    對於linux的詳細說明是here

    1

    安裝pyinstaller,即轉換的.py爲蟒蛇2.7 .EXE到Python是位於一個程序:

    cd C:\python27\scripts 
    pip install pyinstaller 
    

    然後移動要編譯到C任何Python文件:\ python27 \腳本,編譯從那裏通過:

    pyinstaller --onefile yourfile.py 
    

    的--onefile是可選的,但是它打包整個事情(在這個例子中yourfile.py)爲一個.exe文件。一切完成後,將會有2個新文件夾和一個.spec文件。從C:\ python27 \腳本打開文件夾dist。您的.exe將位於一個文件中,您可以雙擊執行並分發給任何沒有Python的人。希望能幫助到你。

    相關問題