python中使用py2exe打包程序


題外話:

今天在群里有人問到自己打包exe文件報錯的問題,也借這個機會順便學習下把python程序打包成EXE的方法。

這里只是記錄一下,防止自己遺忘,也方便以后翻看;

如果能幫到一些同仁,那就更好了!

說明

(開發)系統環境:

python版本:

Python 2.7.11 (v2.7.11:6d1b6a68f775, Dec  5 2015, 20:40:30) [MSC v.1500 64 bit (AMD64)] on win32

測試環境:

 

詳細的打包過程

1. 下載安裝py2exe, 注意選擇版本(python2.7)和系統類型(64bit) http://www.lfd.uci.edu/~gohlke/pythonlibs/#py2exe

 

pip install py2exe-0.6.10a1-cp27-none-win_amd64.whl

 

2. 創建文件夾py2exedemo,然后在里面編寫兩個程序utils.pyhello.py 內容如下:

""" utils.py """
def note():
    name = raw_input("Please input you name:")
    print "Welcome ", name
""" hello.py"""
from utils import note

def mysum(n):
    s = 0
    for i in range(n):
        s += i
    return s

if __name__ == "__main__":
    note()
    print mysum(100)
    # used to see a windows before end
    raw_input("End by input enter:")

 

3. 編寫打包程序exe_demo1.py

""" exe_demo1.py"""
from distutils.core import setup
import py2exe
import sys

#this allows to run it with a simple double click.
sys.argv.append('py2exe')

options = {
    "py2exe": {
        "compressed": 1,
        "optimize": 2,
        "bundle_files": 1
    }
}

setup(
    version = "1.0.0",
    description = "Compute sum(100)",
    name = "py2exe demo",
    options = options,
    zipfile = None,
    console=["hello.py"]
)

 

4. 打包,在cmd中,進入到py2exedemo文件夾,運行如下命令:

python exe_demo1.py py2exe

 

5. 此時會在當前文件夾生成兩個文件夾dist, build

dist中包含了打包成的EXE文件hello.exe, 發布的時候連同dist文件夾一起發布即可。

 

6. 把dist文件夾拷貝到“說明”中的“測試環境”運行,發現能正常運行,至此完畢!

 

后記:

這個打包過程沒有牽涉到很復雜的邏輯,主要是為了表述打包的過程,歡迎各位同仁批評指正!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM