cxfreeze,pyinstaller,py2exe三种方式
目前网上能获取的免费的Python打包工具主要有三种:py2exe、PyInstaller和cx_Freeze。其中PyInstaller最新版只支持Python2.7,py2exe计划开发支持python3.x版本,但是目前还没有完成。只有cx_Freeze支持python3.X版本,也支持python2.X版本。个人也觉得cxfreeze比较简单,不容易出错。
cxfreeeze有几种文件形式,msi和whl。msi是安装包,直接双击运行,下载地址http://sourceforge.net/projects/cx-freeze/files/4.3.2/ 。whl是python安装包,安装格式:pip install whl文件地址,下载地址: https://www.lfd.uci.edu/~gohlke/pythonlibs/
安装后cxfreeze执行脚本在python_home\Scripts下面
cxfreeze打包exe格式:
python cxfreeze全路径 要打包的py文件 --target-dir=
l例如:cxfreeze D:/hello.py --target-dir D:/123或python cxfreeze D:/hello.py --target-dir=D:/123
步骤:
1、首先,下载本机器安装的python相应版本的cx_Freeze软件包
msi: https://www.lfd.uci.edu/~gohlke/pythonlibs/
whl: https://www.lfd.uci.edu/~gohlke/pythonlibs/
2.安装
whl :pip install whl安装包
或msi双击安装
3、安装完成后,在python安装目录下的Scripts文件夹下,生成cx_freeze相关文件。
cmd,进入该文件目录,然后键入
- cxfreeze --version 或者python cxfreeze --version
下面,就可以进行python程序打包了。
4、新建一个python程序,例如:hello.py
在“C:\Python33\Scripts”目录(也就是cxfreeze命令所在的文件目录)下运行:
- cxfreeze D:/hello.py --target-dir D:/123
当然,这是比较简单的程序,所以相关的依赖文件比较少,当引入外部包比较多的时候,并且希望只生成一个.exe文件的时候,可以使用如下的命令:
- cxfreeze D:/hello.py --target-dir D:/123 --no-copy-deps
5、如果要生成可安装包文件,则需要使用”distutils setup script“方式,也就是需要建立一个setupy.py文件的方式。
这里,简单的建立一个setup.py文件,用于生成上述hello.py文件的可安装文件包“。
运行:
- python setup.py bdist_msi
执行成功之后,将在”C:\Python33\Scripts“目录下生成build和dist两个文件。
其中,dist文件夹中包含hello.py程序的安装包文件
build文件夹下包含hello.py程序的可执行文件,也就是hello.exe