专栏首页木子昭的博客将Python程序(.py)转换为Windows可执行文件(.exe)第四步:运行测试

将Python程序(.py)转换为Windows可执行文件(.exe)第四步:运行测试

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

将.py转为.exe

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

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

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

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

修改读取方式为: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入门实例传送门:http://www.jianshu.com/p/8abcf73adba3

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

创建打包为.exe文件

第四步:运行测试

编译后的目录

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

将数据库文件GeoLiteCity.dat拷贝到dist文件夹中

完整的程序

运行可执行文件(.exe)

以管理员身份运行

成功运行效果


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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Django关闭debug, 保持静态文件可访问

    以前写了一篇pm2快速部署Django项目, 遗留了一个问题, 网站虽然可以稳定访问了, 但Django程序依然是调试模式, 如果故意访问错误的url, Dj...

    zhaoolee
  • Windows终端好难用? 试试git bash吧!

    zhaoolee
  • Python交互数据库(Mysql | Mongodb | Redis)Mysql操作数据库Mongdbredis

    数据库 Mysql Mysql MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,后来被Sun公司收购,Sun公司后来又被Oracle公司...

    zhaoolee
  • python代码能做成软件吗

    安装完成后,直接打开命令行,输入pyinstaller,如果显示如下界面,说明安装成功。

    砸漏
  • 简单介绍一下pyinstaller打包以及安全性的实现

    关于pyinstaller如何把图片,音乐,字体等素材文件也打包进exe文件中。这里就不整那些花里胡哨的东西了,直接讲讲我们该怎么做才能实现这个功能吧,先声明一...

    砸漏
  • 091031 T PowerShell Solution

    学powershell有一个星期了吧,一直为这种批处理的运行模式烦恼。按照以下步骤操作后的效果是:     直接.ps1文件可以以管理员身份使用powershe...

    用户1172223
  • 利用 RDPWRAP 做 RDP 劫持的威胁检测

    这个系列的文章翻译由信安之路红蓝对抗小组的所有成员共同完成,后续将陆续发布,敬请期待!

    信安之路
  • 有些东西不想明白,你可能会一直再往下输

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明...

    杨校
  • css基础教程之布局属性

    collapse:主要用来隐藏表格的行或列。隐藏的行或列能够被其他内容使用。对于表格外的其他对象,其作用等同于hidden。

    老雷PHP全栈开发
  • n个骰子点数和及各自出现的概率

    题目:把n个骰子扔在地上,所有骰子朝上一面的点数之和为S。输入n,打印出S的所有可能的值出现的概率。

    Dabelv

扫码关注云+社区

领取腾讯云代金券