详解将Python程序(.py)转换为Windows可执行文件(.exe)


Posted in Python onJuly 19, 2019

python开发者向普通windows用户分享程序,要给程序加图形化的界面(传送门:这可能是最好玩的python GUI入门实例! https://3water.com/article/165763.htm),并要将软件打包为可执行文件(.exe结尾),那如何将.py转为.exe ?

详解将Python程序(.py)转换为Windows可执行文件(.exe)

将.py转为.exe

第一步:安装pyinstaller(这里临时调用了国内豆瓣镜像源,这样下载比较快)

pip install pyinstaller -i https://pypi.douban.com/simple

第二步:更改编码方式(window用户专用)

由于windows默认编码是gbk,而我们的开发环境(unix环境)默认编码使用utf-8,为解决编码问题,我们需要对pyinstaller源码进行一些修改

详解将Python程序(.py)转换为Windows可执行文件(.exe)

修改读取方式为:utf-8

pyinstaller 中winmainifest.py中的第1075行,修改为 with open(filename,encoding="UTF-8") as f:

winmainifest.py 的位置: C:\Program Files (x86)\Python36-32\Lib\site-packages\PyInstaller\utils\win32\winmanifest.py ,如果找不到,可以先尝试第三步,如果转换过程报错,会打印出这个文件在本机的位置.

如果权限不够,无法保存修改,可以先将修改后的文件,保存到桌面(保持原来的文件名),用桌面的文件替换原目录中的文件即可!

第三步:将.py转换为.exe

>这里以`Python GUI入门实例`为例(Python GUI入门实例传送门: https://3water.com/article/165763.htm)

命令: pyinstaller --onefile 011根据ip查询地理位置.py

详解将Python程序(.py)转换为Windows可执行文件(.exe)

创建打包为.exe文件

第四步:运行测试

详解将Python程序(.py)转换为Windows可执行文件(.exe)

编译后的目录

生成的.exe文件在dist文件夹内

将数据库文件GeoLiteCity.dat拷贝到dist文件夹中 详解将Python程序(.py)转换为Windows可执行文件(.exe)

完整的程序

运行可执行文件(.exe)

详解将Python程序(.py)转换为Windows可执行文件(.exe)

以管理员身份运行

详解将Python程序(.py)转换为Windows可执行文件(.exe)

成功运行效果

教程涉及到的资源我都通过百度网盘分享给大家,为了便于大家的下载,资源整合到了一张独立的帖子里,链接如下:
http://www.jianshu.com/p/4f28e1ae08b1

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

Python 相关文章推荐
Python 创建空的list,以及append用法讲解
May 04 Python
PYTHON基础-时间日期处理小结
May 05 Python
详解python 注释、变量、类型
Aug 10 Python
Python3中列表list合并的四种方法
Apr 19 Python
对PyQt5中的菜单栏和工具栏实例详解
Jun 20 Python
python实现二级登陆菜单及安装过程
Jun 21 Python
Pytorch加载部分预训练模型的参数实例
Aug 18 Python
pycharm 2019 最新激活方式(pycharm破解、激活)
Sep 22 Python
解决jupyter notebook打不开无反应 浏览器未启动的问题
Apr 10 Python
Python如何读写CSV文件
Aug 13 Python
Python页面加载的等待方式总结
Feb 28 Python
Python使用OpenCV实现虚拟缩放效果
Feb 28 Python
简单了解django缓存方式及配置
Jul 19 #Python
python实现最小二乘法线性拟合
Jul 19 #Python
这可能是最好玩的python GUI入门实例(推荐)
Jul 19 #Python
python如何实现数据的线性拟合
Jul 19 #Python
django获取from表单multiple-select的value和id的方法
Jul 19 #Python
django 信号调度机制详解
Jul 19 #Python
python傅里叶变换FFT绘制频谱图
Jul 19 #Python
You might like
必须收藏的23个php实用代码片段
2016/02/02 PHP
PHP5.3连接Oracle客户端及PDO_OCI模块的安装方法
2016/05/13 PHP
用javascript实现的仿Flash广告图片轮换效果
2007/04/24 Javascript
js小技巧--自动隐藏红叉叉
2007/08/13 Javascript
javascript 二维数组的实现与应用
2010/03/16 Javascript
利用json获取字符出现次数的代码
2012/03/22 Javascript
Ajax同步与异步传输的示例代码
2013/11/21 Javascript
JavaScript中的console.dir()函数介绍
2014/12/29 Javascript
15款jQuery分布引导插件分享
2015/02/04 Javascript
JavaScript中定义函数的三种方法
2015/03/12 Javascript
jQuery实现的自定义弹出层效果实例详解
2016/09/04 Javascript
angularjs实现多张图片上传并预览功能
2017/02/24 Javascript
bootstrap datetimepicker 日期插件在火狐下出现一条报错信息的原因分析及解决办法
2017/03/08 Javascript
vue增删改查的简单操作
2017/07/15 Javascript
浅谈webpack和webpack-cli模块源码分析
2020/01/19 Javascript
Java中重定向输出流实现用文件记录程序日志
2015/06/12 Python
Python使用gensim计算文档相似性
2016/04/10 Python
Python读取图片属性信息的实现方法
2016/09/11 Python
Python numpy 点数组去重的实例
2018/04/18 Python
处理Selenium3+python3定位鼠标悬停才显示的元素
2019/07/31 Python
图文详解Django使用Pycharm连接MySQL数据库
2019/08/09 Python
python处理excel绘制雷达图
2019/10/18 Python
Python GUI库PyQt5样式QSS子控件介绍
2020/02/25 Python
python 元组的使用方法
2020/06/09 Python
python如何设置静态变量
2020/09/07 Python
python opencv肤色检测的实现示例
2020/12/21 Python
什么是Oracle的后台进程background processes?都有哪些后台进程?
2012/04/26 面试题
J2EE面试题集锦(附答案)
2013/08/16 面试题
四风存在的原因分析
2014/02/11 职场文书
环保倡议书
2014/04/14 职场文书
公司委托书格式范本
2014/09/16 职场文书
2014年行风建设工作总结
2014/12/01 职场文书
大学生实习介绍信
2015/05/05 职场文书
婚宴致辞
2015/07/28 职场文书
用Python远程登陆服务器的步骤
2021/04/16 Python
Python合并多张图片成PDF
2021/06/09 Python