详解将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爬虫框架talonspider简单介绍
Jun 09 Python
Pandas标记删除重复记录的方法
Apr 08 Python
如何在python字符串中输入纯粹的{}
Aug 22 Python
在Python中定义一个常量的方法
Nov 10 Python
Python3自动签到 定时任务 判断节假日的实例
Nov 13 Python
Python 互换字典的键值对实例
Feb 12 Python
Python3利用Dlib实现摄像头实时人脸检测和平铺显示示例
Feb 21 Python
Python中的正则表达式与JSON数据交换格式
Jul 03 Python
Pyorch之numpy与torch之间相互转换方式
Dec 31 Python
Python使用jupyter notebook查看ipynb文件过程解析
Jun 02 Python
基于Python pyecharts实现多种图例代码解析
Aug 10 Python
python 基于selenium实现鼠标拖拽功能
Dec 24 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
jquery提示 "object expected"的解决方法
2009/12/13 Javascript
js选取多个或单个元素的实现代码(用class)
2012/08/22 Javascript
基于js disabled="false"不起作用的解决办法
2013/06/26 Javascript
JSuggest自动匹配下拉框使用方法(示例代码)
2013/12/27 Javascript
jquery自定义滚动条插件示例分享
2014/02/21 Javascript
JavaScript跨平台的开源框架NativeScript
2015/03/24 Javascript
简单谈谈JavaScript的同步与异步
2015/12/31 Javascript
require.js 加载 vue组件 r.js 合并压缩的实例
2016/10/14 Javascript
JavaScript实现向select下拉框中添加和删除元素的方法
2017/03/07 Javascript
详解webpack进阶之插件篇
2017/07/06 Javascript
bootstrap-Treeview实现级联勾选
2017/11/23 Javascript
微信小程序实现弹出层效果
2020/05/26 Javascript
Vue组件间通信方法总结(父子组件、兄弟组件及祖先后代组件间)
2019/04/17 Javascript
three.js利用gpu选取物体并计算交点位置的方法示例
2019/11/25 Javascript
JS删除数组指定值常用方法详解
2020/06/04 Javascript
[46:55]完美世界DOTA2联赛决赛 FTD vs Phoenix 第三场 11.08
2020/11/11 DOTA
部署Python的框架下的web app的详细教程
2015/04/30 Python
Python实现登录人人网并抓取新鲜事的方法
2015/05/11 Python
浅析AST抽象语法树及Python代码实现
2016/06/06 Python
ubuntu系统下 python链接mysql数据库的方法
2017/01/09 Python
Python中常用信号signal类型实例
2018/01/25 Python
Python标准库shutil用法实例详解
2018/08/13 Python
python 使用turtule绘制递归图形(螺旋、二叉树、谢尔宾斯基三角形)
2019/05/30 Python
解决pycharm导入本地py文件时,模块下方出现红色波浪线的问题
2020/06/01 Python
python 基于PYMYSQL使用MYSQL数据库
2020/12/24 Python
Web前端页面跳转并取到值
2017/04/24 HTML / CSS
比利时的在线灯具店:Lampen24.be
2019/07/01 全球购物
美国和加拿大计算机和电子产品购物网站:TigerDirect.com
2019/09/13 全球购物
上海奥佳笔试题面试题
2016/11/16 面试题
幼儿园教师请假制度
2014/01/16 职场文书
生态养殖创业计划书
2014/05/06 职场文书
金融专业毕业生自荐信
2014/06/26 职场文书
2015年度优秀员工推荐信
2015/03/23 职场文书
郭明义电影观后感
2015/06/08 职场文书
Python re.sub 反向引用的实现
2021/07/07 Python
python 判断文件或文件夹是否存在
2022/03/18 Python