Python打包成exe流程详解

达芬奇密码2018-08-09 11:47
1、背景说明:
  Python的环境并不是每台PC上都有安装,因此,要将自己写的脚本或工具发给他人使用,必须先打包成exe
2、对比 py2exe和 PyInstaller打包工具:
使用 py2exe 打包好的exe只能在相同的系统下运行,比如在XP系统用py2exe打包好的exe只能在XP上运行,在win7上可能就有问题,而且也可能存在,在别的XP机子上也无法运行的问题,因为一些别的机子可能会缺少dll文件。
而使用PyInstaller生成的exe则没有这么多限制,因此,在此主要介绍下使用 PyInstaller打包成exe的详细步骤。
3、流程详解:
(1)以 python-2.7.9为例,如下图,安装 python-2.7.9.amd64(本次使用的系统为Windows10):
(2)安装好后配置python环境变量:



(3)环境变量若配置好了,在cmd中输入python即可打印出相关信息:
(4) 使用PyInstaller打包前需安装: pywin32-219.win-amd64-py2.7.exe,如下图:

(5)解压: pyinstaller-2.0.zip,例如解压到: D:\Python目录下


(6)解压: upx391w.zip,并将解压后的 upx.exe文件拷贝到 D:\Python\pyinstaller-2.0目录下, upx的作用就是压缩生成的exe文件

(7)在D:\Python\scripts目录下写一个简单的python脚本:


(8)打开cmd,切换到 D:\Python\pyinstaller-2.0目录下,并执行: python pyinstaller.py -F D:\Python\scripts\main.py
(9)执行成功后,会自动在 D:\Python\pyinstaller-2.0\main\dist目录下生成一个exe文件,由于采用了UPX进行压缩,此时的exe文件大小为2248KB:
(10)此时,双击main.exe即可执行脚本:
(11)若将 D:\Python\pyinstaller-2.0目录下的 upx.exe删掉,再执行一次打包命令:
(12)就会发现生成的未经UPX压缩的exe文件会比原先的大一点,达到了2829KB:


网易云新用户大礼包:https://www.163yun.com/gift

本文来自网易实践者社区,经作者冯海涛授权发布。