时间:2021-05-22
利用Python写了一个小脚本想要传给使用Windows但没有装Python的朋友执行,这时候就可以利用将档案包装成exe档案,让没有Python的朋友也可以执行。本篇将介绍利用套件「PyInstaller」制作exe档。
1|0安装方法
#安装pyinstallerpip install pyinstaller#安装依赖pip install pywin32-ctypes2|0常用参数介绍
pyinstaller -h来查看参数
-F打包成一个exe文件
-i图标路径
-w使用视窗,无控制台
-c使用控制台,无视窗
-D创建一个目录,包含exe以及其他一些依赖性文件
编译文件时,我们通常使用如下命令:
pyinstaller -F -w -i favo.ico main.py
3|0静态文件
对于python所依赖的图片,config.yaml等静态文件,pyinstall不会自动打包,需要手动在main.py(所需要打包的入口文件)的相同目录中寻找main.spec,修改datas依赖,才可以自动打包到exe的相同目录下,然后执行即可
datas是一个数组,每个子项是一个tuple,其中tuple的第一个参数是你要打包的源路径,第二个参数是打包后的名字
# -*- mode: python -*-block_cipher = Nonea = Analysis(['ui.py'],pathex=['C:\\Users\\user\\Desktop\\resilio\\toyou\\code\\zeus_board_test'],binaries=[],datas=[('C:\\Users\\user\\Desktop\\resilio\\toyou\\code\\zeus_board_test\\images','images'),('C:\\Users\\user\\Desktop\\resilio\\toyou\\code\\zeus_board_test\\question.yaml','question.yaml')],hiddenimports=[],hookspath=[],runtime_hooks=[],excludes=[],win_no_prefer_redirects=False,win_private_assemblies=False,cipher=block_cipher,noarchive=False)然后执行:
pyinstaller -F main.spec
4|0示例
如下图所示,我们编写一个输出helow pyinstaller的Python程序,并利用input()使程序可以暂时停在输出画面。
print('helow pyinstaller')input('please wait:')编译python为exe,编译过程中会自动安装相关依赖
pyinstaller -F hello.py
编译过程中会产生如下输出:
…6942 INFO: checking PY6944 INFO: Building because toc changed6944 INFO: Building PYZ(ZlibArchive)C:\Users\user\Desktop\test\build\test\PYZ-00.pyz7559 INFO: Building PYZ(ZlibArchive)C:\Users\user\Desktop\test\build\test\PYZ-00.pyz completed successfully.7568 INFO: checking PKG7569 INFO: Building because toc changed7569 INFO: Building PKG(CArchive)PKG-00.pkg9407 INFO: Building PKG(CArchive)PKG-00.pkg completed successfully.9409 INFO: Bootloader c:\users\user\appdata\local\programs\python\python36\lib\site-packages\PyInstaller\bootloader\Windows-64bit\run.exe9409 INFO: checking EXE9411 INFO: Building because toc changed9411 INFO: Building EXE from EXE-00.toc9412 INFO: Appending archive to EXE C:\Users\user\Desktop\test\dist\test.exe9455 INFO: Building EXE from EXE-00.toc completed successfully.通过输出可以看出pyinstaller进行了如下操作:
会先建立一个hello.spec
建立「build」文件夹
建立log纪录档与工作档案于文件夹build中
建立「dist」文件夹
建立执行档(.exe)在「dist」文件夹
4|1注意事项
执行档案可在win8/win10,64位的电脑运行,但win7 x64和其余所有32位失败,会提示不兼容,若要能32位与64位皆可运行,就要在Python 32位的环境下编译PyInstaller打包exe,才能在32位与64位成功。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
如何将编写的c语言程序打包成exe可执行文件呢?以前我们写程序很多是在编辑器上,让编辑起来编译运行我们的程序。如果想将其打包成exe可执行文件该如何做?我这里推
在使用Python做开发的时候,时不时会给自己编写了一些小工具辅助自己的工作,但是由于开发依赖环境问题,多数只能在自己电脑上运行,拿到其它电脑后就没法运行了。
利用python实现防撤回,对方撤回的消息可在自己的微信文件传输助手中查看。如果想变成可执行文件放在电脑中运行,可用pyinstaller将此程序打包成exe文
Java程序打包成exe可执行文件,分为两大步骤。第一步:将Java程序通过Eclipse或者Myeclipse导成Jar包第二步:通过exe4j讲Jar包程序
因为近期正在学习python,就需要将python文件打包为exe可执行文件,就将该过程记录下来。首先我是通过Pyinstall打包的,具体安装及打包步骤如下1