赞
踩
在项目所在文件夹按住shift 单击鼠标右键弹出菜单,打开Powershell,直接输入代码:
1、带图标,生成一个文件,关闭控制台
pyinstaller -F -w -i p.ico 1.py
2、生成一个文件,关闭控制台
pyinstaller -F -w 1.py
3、生成一个文件,关闭控制台,添加数据,排除不必要的库
pyinstaller -Fwi 4.ico 1.py --add-data 'data;.' --exclude-module Pillow --exclude-module tkinter
参数 | 作用 |
---|---|
-F, onefile | 产生一个文件用于部署(参见 XXXXX). |
-D, onedir | 产生一个目录用于部署(默认) |
-K, tk | 在部署时包含TCL/TK |
-a, ascii | 不包含编码,在支持 Unicode 的 python 版本上默认包含所有的编码 |
-d, debug | 产生debug 版本的可执行文件 |
-w, windowed,noconsole | 使用Windows子系统执行,当程序启动的时候不会打开命令行,只对Windows 有效 |
-c, nowindowed,console | 使用控制台子系统执行(默认),只对Windows有效 |
-s, strip | 可执行文件和共享库将run through strip. 注意 Cygwin 的 strip 往往使普通的 win32 Dll 无法使用 |
-X, upx | 如果有UPX 安装 执行 Configure.py 时检测 会压缩执行文件(Windows 系统中的 DLL 也会 参见 note) |
-o DIR, out=DIR | 指定spec 文件的生成目录 如果没有指定 而且当前目录是 PyInstaller的根目录 会自动创建一个用于输出 (spec 和生成的可执行文件 的目录 如果没有指定 而当前目录不是 PyInstaller 的根目录 则会输出到当前的目录下 |
-p DIR, path=DIR | 设置导入路径和使用 PYTHONPATH 效果相似 可以用路径分割符(Windows 使用分号 ,Linux 使用冒号 分割 指定多个目录 也可以使用多个 p 参数来设置多个导入路径 |
–icon=<FILE.ICO> | 将file.ico 添加为可执 行文件的资源 只对 Windows 系统有效 |
–icon=<FILE.EXE,N> | 将file.exe 的第 n 个图标添加为可执行文件的资源 只对Windows 系统有效 |
-v FILE,version=FILE | 将verfile 作为可执行文件的版本资源 只对 Windows 系统有效 |
-n NAME,name=NAME | 可选的项目(产生的 spec 的)名字 如果省略 第一个脚本的主文件名将作为 spec 的名字 |
<RCC>
<qresource prefix="/">
<file>1.png</file>
<file>2.png</file>
<file>3.png</file>
......
# 有多少文件就写多少行
</qresource>
</RCC>
①在项目所在文件夹按住shift 单击鼠标右键弹出菜单,打开Powershell
②键入命令pyrcc5 -o 目标文件名 源文件名
注意:图片名称还是原来的名称,前面的“:”冒号一定不能少
最后使用pyinstaller 打包
键入pyinstaller -F -w -i 1.ico work.py
这个时候将之前用到的png 图标文件、qrc 文件和pyinstaller 生成的两个文件夹等删除也可以正常运行
源代码中所需路径修改为:
import os
# 路径转换函数
def temp_file(text):
if getattr(sys, 'frozen', None):
basedir = sys._MEIPASS
else:
basedir = os.path.dirname(__file__)
print(basedir)
return os.path.join(basedir, text)
# 调用时
file_path = temp_file('1.xlsx')
打包命令:
pyinstaller -Fwi w.ico 1.py --add-data '1.xlsx;.'
multiprocessing.freeze_support() # 多进程冻结窗口
在主进程中使用:
在多进程调用的函数后面使用:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。