py2exe 打包python為exe

依賴直譯器的煩人問題

你是否有這樣的煩腦,用Python寫了一個很酷的程式,傳給你同學看卻因為他沒有裝Python直譯器,為了執行你這個小程式,他得安裝直譯器才能執行,更麻煩的還有第三方的模組要安裝,意願就大大的降低,同樣的,面對你的客戶,你總不能要求你的客戶安裝Python直譯器,然後用easy_install下載需要的模組,那會是很麻煩的事情,很多時候,我們希望Python像.exe檔一樣只要是Windows就可以執行,該如何解決?

py2exe

所幸我們有現成的工具可以使用,叫做py2exe,它會將Python程式所需要的東西收集,並且打包成可以不用安裝直譯器就可以執行的.exe程式,以下我們就教你一步一步將Python程式打包成.exe檔

安裝py2exe

如果你有安裝easy_install,你可以直接在cmd下這樣的指令,就可以輕鬆地安裝py2exe,關於easy_install的教學可以參考這篇

  1. easy_install py2exe

如果沒有的話,你可以直接從它的官方網站下載並且安裝

開始打包

首先,你需要建立一個這樣的python檔案,放在你想打包的python程式同一個目錄下

  1. from distutils.core import setup
  2. import py2exe
  3. setup(console=[{“script” : “python_file.py”}], options={“py2exe” : {“includes” : [“lib_1″,”lib_2″,”lib_3”,…]}})

其中的python_file.py請改成你要當做執行檔的python檔案名稱,例如我想打包test.py成為.exe檔,就將上面程式裡的python_file.py改成test.py,當完成之後,檔名存成setup.py,放在你python程式的同一個目錄下

接著,開啟 開始 -> 執行 -> cmd,也就是所謂的命令提示字元,然後切換到你專案所在的目錄,然後執行如下面指令

  1. cd /d G:\Programming\Python\dstreamer\src\src\dist
  2. python setup.py install

完成之後,再執行以下指令

  1. python setup.py py2exe

此時py2exe就會開始幫你收集你程式會用到的模組,並且打包好,如果沒有問題,執行完同一個目錄下應該會多出build和dist兩個資料夾,dist裡會有一個和你python檔案名稱一樣的.exe檔,那就是封裝後的.exe執行檔,而該目錄下的所有其它檔案,就是該執行檔所需要的模組和檔案所封裝成的檔案,因此如果想要將程式移到沒有安裝Python直譯器的環境下執行,只要將dist下的所有檔案複製過去然後再執行.exe檔就可以了

 

Tags:

Add a Comment

發佈留言必須填寫的電子郵件地址不會公開。