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


Posted in Python onOctober 09, 2018

在我们完成一个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

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

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

进行解压缩、放置和安装

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

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

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

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

输入命令:

python setup.py install

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

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

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

打包文件成exe程序

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

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

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

pyinstaller -F test.py

常用参数说明:

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

pyinstaller -h 来查看参数

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

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

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

详解如何将python3.6软件的py文件打包成exe程序
打包好的exe文件,在同目录的dist文件中:

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

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

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

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

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

Python 相关文章推荐
在Linux命令行终端中使用python的简单方法(推荐)
Jan 23 Python
Python实现将文本生成二维码的方法示例
Jul 18 Python
python队列通信:rabbitMQ的使用(实例讲解)
Dec 22 Python
python简单实现操作Mysql数据库
Jan 29 Python
django 修改server端口号的方法
May 14 Python
Python 调用PIL库失败的解决方法
Jan 08 Python
python实现电子词典
Mar 03 Python
python将音频进行变速的操作方法
Apr 08 Python
Python rabbitMQ如何实现生产消费者模式
Aug 24 Python
Jupyter安装链接aconda实现过程图解
Nov 02 Python
python3 kubernetes api的使用示例
Jan 12 Python
使用Python脚本对GiteePages进行一键部署的使用说明
May 27 Python
让代码变得更易维护的7个Python库
Oct 09 #Python
windows下cx_Freeze生成Python可执行程序的详细步骤
Oct 09 #Python
Python打包方法Pyinstaller的使用
Oct 09 #Python
Python如何发布程序的详细教程
Oct 09 #Python
python如何发布自已pip项目的方法步骤
Oct 09 #Python
Django csrf 验证问题的实现
Oct 09 #Python
Python正则表达式指南 推荐
Oct 09 #Python
You might like
php项目打包方法
2008/02/18 PHP
php后台如何避免用户直接进入方法实例
2013/10/15 PHP
判断、添加和删除WordPress置顶文章的相关PHP函数小结
2015/12/10 PHP
PHP对象链式操作实现原理分析
2016/10/09 PHP
PHP设计模式之模板方法模式定义与用法详解
2018/04/02 PHP
javascript eval函数深入认识
2009/02/21 Javascript
js导出table数据到excel即导出为EXCEL文档的方法
2013/10/10 Javascript
Jquery获得控件值的三种方法总结
2014/02/13 Javascript
一款基于jQuery的图片场景标注提示弹窗特效
2015/01/05 Javascript
js如何改变文章的字体大小
2016/01/08 Javascript
基于jquery实现三级下拉菜单
2016/05/10 Javascript
echarts学习笔记之箱线图的分析与绘制详解
2017/11/22 Javascript
vue权限路由实现的方法示例总结
2018/07/29 Javascript
jQuery-ui插件sortable实现自由拖动排序
2018/12/01 jQuery
使用Angular自定义字段校验指令的方法示例
2019/02/01 Javascript
Angular中使用ng-zorro图标库部分图标不能正常显示问题
2019/04/22 Javascript
详解Python中的__new__()方法的使用
2015/04/09 Python
python检查字符串是否是正确ISBN的方法
2015/07/11 Python
Python 中的with关键字使用详解
2016/09/11 Python
Python正则表达式教程之二:捕获篇
2017/03/02 Python
Python实现Smtplib发送带有各种附件的邮件实例
2017/06/05 Python
Python爬虫获取图片并下载保存至本地的实例
2018/06/01 Python
Python编写合并字典并实现敏感目录的小脚本
2019/02/26 Python
pycharm中显示CSS提示的知识点总结
2019/07/29 Python
Python函数装饰器原理与用法详解
2019/08/16 Python
布隆过滤器的概述及Python实现方法
2019/12/08 Python
Python3 io文本及原始流I/O工具用法详解
2020/03/23 Python
python的flask框架难学吗
2020/07/31 Python
HTML5 创建canvas元素示例代码
2014/06/04 HTML / CSS
理想点亮人生演讲稿
2014/05/21 职场文书
镇人大副主席民主生活会对照检查材料思想汇报
2014/10/01 职场文书
工程合作意向书范本
2015/05/09 职场文书
普通员工辞职信范文
2015/05/12 职场文书
2015年庆祝国庆节66周年演讲稿
2015/07/30 职场文书
信息技术国培研修日志
2015/11/13 职场文书
AudioContext 实现音频可视化(web技术分享)
2022/02/24 Javascript