python开发者向普通windows用户分享程序,要给程序加图形化的界面(EasyGUI 学习文档)(在前面的课程中目前只学习了最简单的EasyGui,后面还会继续学习 GUI的终极选择:Tkinter,敬请期待),并要将软件打包为可执行文件(.exe结尾),那如何将.py转为.exe ?
打开cmd,输入 pip install pyinstaller
pip install pyinstaller
由于windows默认编码是gbk,而我们的开发环境(unix环境)默认编码使用utf-8,为解决编码问题,我们需要对pyinstaller源码进行一些修改:
将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,
如果找不到,可以先尝试第三步,如果转换过程报错,会打印出这个文件在本机的位置。
如果权限不够,无法保存修改,可以先将修改后的文件,保存到桌面(保持原来的文件名),用桌面的文件替换原目录中的文件即可!
以桌面上写的一个翻译器程序为例:
打开 cmd,先使用 cd C:\Users\XiangyangDai\Desktop 把当前目录转到Desktop 文件夹:
然后使用命令:
pyinstaller -F translation.py
-F表示一个文件。
会在桌面得到一个 dict 文件夹,里面就会有一个名为 translation.exe 的文件。
我们先运行直接Python文件,然后运行转换后的.exe文件。
运行Python 的结果:
=========== RESTART: C:\Users\XiangyangDai\Desktop\translation.py ===========
---------这是一个Python翻译器---------
请输入需要翻译的内容:我爱Python
翻译结果:I love the Python
请输入需要翻译的内容:
运行.exe文件的结果: