详解如何将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 相关文章推荐
Python cookbook(数据结构与算法)字典相关计算问题示例
Feb 18 Python
Python装饰器原理与简单用法实例分析
Apr 29 Python
pandas 将list切分后存入DataFrame中的实例
Jul 03 Python
对django views中 request, response的常用操作详解
Jul 17 Python
Django 创建后台,配置sqlite3教程
Nov 18 Python
Python中base64与xml取值结合问题
Dec 22 Python
Pycharm安装并配置jupyter notebook的实现
May 18 Python
Python捕获异常堆栈信息的几种方法(小结)
May 18 Python
Python基于pyjnius库实现访问java类
Jul 31 Python
python如何实现递归转非递归
Feb 25 Python
pandas取dataframe特定行列的实现方法
May 24 Python
用 Python 定义 Schema 并生成 Parquet 文件详情
Sep 25 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防CC攻击实现代码
2011/12/29 PHP
解析dedeCMS验证码的实现代码
2013/06/07 PHP
laravel获取不到session的三种解决办法【推荐】
2018/09/16 PHP
激活 ActiveX 控件
2006/10/09 Javascript
IE中jquery.form中ajax提交没反应解决方法分享
2012/09/11 Javascript
javascript object array方法使用详解
2012/12/03 Javascript
javascript中的startWith和endWith的几种实现方法
2013/05/07 Javascript
js判断url是否有效的两种方法
2014/03/04 Javascript
Javascript中prototype属性实现给内置对象添加新的方法
2015/05/14 Javascript
Express实现前端后端通信上传图片之存储数据库(mysql)傻瓜式教程(一)
2015/12/10 Javascript
Bootstrap每天必学之模态框(Modal)插件
2016/04/26 Javascript
bootstrap select插件封装成Vue2.0组件
2017/04/17 Javascript
nodejs利用ajax实现网页无刷新上传图片实例代码
2017/06/06 NodeJs
vue.js 上传图片实例代码
2017/06/22 Javascript
用Vue编写抽象组件的方法
2019/05/06 Javascript
详解iview的checkbox多选框全选时校验问题
2019/06/10 Javascript
JsonProperty 的使用方法详解
2019/10/11 Javascript
[43:14]Liquid vs Optic 2018国际邀请赛淘汰赛BO3 第二场 8.21
2018/08/22 DOTA
Python实现的生成自我描述脚本分享(很有意思的程序)
2014/07/18 Python
使用Python编写Linux系统守护进程实例
2015/02/03 Python
Python实现CET查分的方法
2015/03/10 Python
python概率计算器实例分析
2015/03/25 Python
Python 编码处理-str与Unicode的区别
2016/09/06 Python
python人民币小写转大写辅助工具
2018/06/20 Python
python递归全排列实现方法
2018/08/18 Python
Python修改文件往指定行插入内容的实例
2019/01/30 Python
selenium 安装与chromedriver安装的方法步骤
2019/06/12 Python
python 3.74 运行import numpy as np 报错lib\site-packages\numpy\__init__.py
2019/10/06 Python
Python使用docx模块实现刷题功能代码
2020/02/13 Python
python 基于pygame实现俄罗斯方块
2021/03/02 Python
美国山地自行车、露营、户外装备和服装购物网站:Aventuron
2018/05/05 全球购物
BSTN意大利:德国街头和运动文化高品质商店
2020/12/22 全球购物
电子商务自荐书范文
2014/01/04 职场文书
班级读书活动总结
2014/06/30 职场文书
工作失误检讨书(经典集锦版)
2014/10/17 职场文书
css实现两栏布局,左侧固定宽,右侧自适应的多种方法
2021/08/07 HTML / CSS