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