详解如何将python3.6软件的py文件打包成exe程序

 更新时间:2018年10月09日 10:50:04   作者:云水禅心_心一  
这篇文章主要介绍了详解如何将python3.6软件的py文件打包成exe程序,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

在我们完成一个Python项目或一个程序时,希望将Python的py文件打包成在Windows系统下直接可以运行的exe程序。在浏览网上的资料来看,有利用pyinstaller和cx_Freeze进行打包的方法。关于cx_Freeze打包的方法,可以参考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.2版本的,版本相对较新,cx_Freeze还没有更新版本至3.6版本。在我尝试很多次数失败后,决定采用pyinstaller来进行文件打包的方法。

下载pyinstaller

采用命令行操作的办法

在cmd命令行中,输入代码:

pip install pyinstaller

或者采用更新、升级的方法:

pip install --upgrade pyinstaller

采用下载文件+cmd操作的办法

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


     

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

进行解压缩、放置和安装

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


该目录中含有setup.py,同时在cmd中进入该目录:


输入命令:

python setup.py install

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


使用pyinstaller打包py文件成exe程序

打包文件成exe程序

将cmd的目录切换至(命令:cd 文件路径(注意空格))需要打包的py文件目录下:


并输入代码,格式为使用命令:pyinstaller -F 文件名(带后缀py):

pyinstaller -F test.py

常用参数说明:

–icon=图标路径
-F 打包成一个exe文件
-w 使用窗口,无控制台
-c 使用控制台,无窗口
-D 创建一个目录,里面包含exe以及其他一些依赖性文件

pyinstaller -h 来查看参数

回车后,代码迅速操作,直到操作结束。


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


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

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

pyinstaller -F --icon=my.ico test.py

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 解析Python扩展模块的加速方案

    解析Python扩展模块的加速方案

    这章我们来介绍Python的扩展名之ctypes,教大家认识ctypes,有需要的朋友可以借鉴参考下,希望可以有所帮助,祝大家多多进步,早日升职加薪
    2021-09-09
  • pandas 缺失值与空值处理的实现方法

    pandas 缺失值与空值处理的实现方法

    这篇文章主要介绍了pandas 缺失值与空值处理的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • python+opencv实现动态物体识别

    python+opencv实现动态物体识别

    这篇文章主要为大家详细介绍了python+opencv实现动态物体识别,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • Python聚类算法之DBSACN实例分析

    Python聚类算法之DBSACN实例分析

    这篇文章主要介绍了Python聚类算法之DBSACN,结合实例形式详细分析了DBSACN算法的原理与具体实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-11-11
  • Python 运算符Inplace 与Standard 

    Python 运算符Inplace 与Standard 

    这篇文章主要介绍了Python 运算符Inplace 与Standard,nplace运算符的行为类似于普通运算符,只是它们在可变和不可变目标的情况下以不同的方式运行
    2022-09-09
  • python使用tensorflow深度学习识别验证码

    python使用tensorflow深度学习识别验证码

    这篇文章主要介绍了python使用tensorflow深度学习识别验证码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • Python学习之集合的常用方法总结

    Python学习之集合的常用方法总结

    集合并不是一种数据处理类型,而是一种中间类型。集合(set)是一个无序、不重复的元素序列,经常被用来处理两个列表进行交并差的处理性。本文将详细讲解集合的一些常用方法,感兴趣的可以了解一下
    2022-03-03
  • Python中的探索性数据分析(功能式)

    Python中的探索性数据分析(功能式)

    这篇文章主要介绍了功能式Python中的探索性数据分析的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-12-12
  • python数学建模之Matplotlib 实现图片绘制

    python数学建模之Matplotlib 实现图片绘制

    这篇文章主要介绍了python数学建模之Matplotlib 实现图片绘制,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-07-07
  • Python+Opencv实现计算闭合区域面积

    Python+Opencv实现计算闭合区域面积

    这篇文章主要介绍了利用Python Opencv计算闭合区域的面积的原理以及实现代码,文中的讲解详细易懂,感兴趣的小伙伴快跟随小编一起学习一下吧
    2022-03-03

最新评论