在windows下将python3.6软件的py文件打包为exe程序

      在我们完成一个Python项目或一个程序时,希望将Python的py文件打包成在Windows系统下直接可以运行的exe程序。在浏览网上的资料来看,有利用pyinstallercx_Freeze进行打包的方法。关于cx_Freeze打包的方法,可以参考wangdamozhizhou博客windows下cx_Freeze生成Python可执行程序中的方法。由于方法主要是可以用于Python3.3版本的,高于该版本的Python无法使用。在我尝试的过程中,碰到的一个问题是:

安装cx_Freeze-4.3.3,找不到cxFreeze.bat

解决的方法是,在cmd命令行操作下,切换至放置cx_Freeze-4.3.3文件的Python安装目录下scripts目录下,使用以下代码自动生成:

python cxfreeze-postinstall


  由于我安装的Python版本是3.6.0版本的,版本相对较新,cx_Freeze还没有更新版本至3.6版本。在我尝试很多次数失败后,决定采用pyinstaller来进行文件打包的方法。

 直接在cmd命令行中输入命令进行下载:

 在windows下将python3.6软件的py文件打包为exe程序

可能会因为网速或者其他原因造成下载的失败,一般情况下最好换源进行下载  (我使用的豆瓣源)

在windows下将python3.6软件的py文件打包为exe程序

或者采用更新或者升级的方法:
在windows下将python3.6软件的py文件打包为exe程序

也可以采用源文件的下载以及解压方式进行下载:

首先,前往PyInstaller网站下载:http://www.pyinstaller.org/downloads.html

在windows下将python3.6软件的py文件打包为exe程序

   下载时,要注意你安装的Python是多少版本的,有稳定版和不稳定版的,Python3.6只有不稳定版本的。其中绿色方框的是适用于linux操作系统下的,红色方框是适用于Windows系统下的。

   进行解压缩、放置和安装  下载后,将压缩文件解压缩在Python安装目录下,进入该文件:

在windows下将python3.6软件的py文件打包为exe程序

通过cmd命令窗口进入到该目录下: 输入

在windows下将python3.6软件的py文件打包为exe程序

并按下回车键,会看到代码迅速执行,会进行安装pyinstaller,显示如下状态,看到“Finished processing dependencies for PyInstaller==3.3.dev0+41c426f6d”,即安装成功:

在windows下将python3.6软件的py文件打包为exe程序

接下来用pyinstaller打包py文件成exe程序:

cmd命令窗口进入到文件目录下: 并输入代码,格式为使用命令:pyinstaller -F 文件名(带后缀py):

在windows下将python3.6软件的py文件打包为exe程序

常用参数说明:

–icon=图标路径

-F 打包成一个exe文件

-w 使用窗口,无控制台

-c 使用控制台,无窗口

-D 创建一个目录,里面包含exe以及其他一些依赖性文件

pyinstaller -h 来查看参数 回车后,代码迅速操作,直到操作结束。

在windows下将python3.6软件的py文件打包为exe程序

返回目标文件目录,发现该目录下生成了.spec文件test.spec:

在windows下将python3.6软件的py文件打包为exe程序

打包好的exe文件,在同目录的dist文件中:

在windows下将python3.6软件的py文件打包为exe程序

由此,py文件打包好为exe文件。 pyinstaller 改变生成exe程序的图标

在windows下将python3.6软件的py文件打包为exe程序

my.ico 是一个图标名,和当前的test.py文件在同一个目录下