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

作者:木子昭 时间:2022-05-29 20:46:25 

python开发者向普通windows用户分享程序,要给程序加图形化的界面(传送门:这可能是最好玩的python GUI入门实例! https://www.jb51.net/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://www.jb51.net/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

来源:https://www.jianshu.com/p/64cb9108a7c6

标签:Python,程序,可执行文件
0
投稿

猜你喜欢

  • Python字符串拼接的4种方法实例

    2023-01-30 18:57:15
  • Python基于回溯法子集树模板解决取物搭配问题实例

    2023-11-20 04:46:53
  • Python处理Excel文件实例代码

    2022-02-15 23:13:01
  • IE中不可遍历的属性

    2010-01-19 13:47:00
  • Python提取支付宝和微信支付二维码的示例代码

    2021-04-08 19:38:42
  • python保存字典数据到csv文件的完整代码

    2023-04-09 17:02:02
  • 详解Django中的ifequal和ifnotequal标签使用

    2023-06-24 05:07:04
  • Bottle框架中的装饰器类和描述符应用详解

    2023-10-10 00:18:25
  • pip安装py_zipkin时提示的SSL问题对应

    2021-03-14 18:27:55
  • python获取糗百图片代码实例

    2022-09-10 01:44:01
  • Python入门教程(七)Python数字类型

    2022-05-29 22:40:00
  • Python创建二维数组实例(关于list的一个小坑)

    2021-04-29 19:28:13
  • 最小asp后门程序

    2011-04-03 10:35:00
  • 利用JavaScript正则表达式模拟Google Talk的文本处理

    2007-12-04 18:43:00
  • SQL查询入门(上篇) 推荐收藏

    2011-09-30 11:47:11
  • pandas计数 value_counts()的使用

    2023-05-02 02:06:13
  • ASP缓存类 【先锋缓存类】Ver2004

    2009-01-05 12:28:00
  • Python利用Xpath选择器爬取京东网商品信息

    2021-05-18 09:08:41
  • form表单的submit方法和submit事件

    2008-10-15 11:22:00
  • MySQL 通过索引优化含ORDER BY的语句

    2010-03-25 10:28:00
  • asp之家 网络编程 m.aspxhome.com