当前位置: 首页 > news >正文

[Python进阶] 程序打包之Pyinstaller参数介绍

5.4 Pyinstaller参数介绍

5.4.1 选项参数

参数名 说明
-h、–help 查看Pyinstaller所有命令的用法和帮助
-v、–version 查看当前Pyinstaller版本
–distpath DIR 设置dist位置,默认当前目录
–workpath WORKPATH 设置build位置,默认当前目录
-y、–noconfirm 当存在dist时,不询问,直接覆盖
–upx-dir UPX_DIR 指定upx工具的目录,默认执行路径
-a、–ascii 不包含unicode支持
–clean 打包前先清理缓存和临时文件,重新打包建议加上该命令
–log-level LEVEL 限制打包时在控制台中输出的日志等级。一共有6个等级,由低到高分别为TRACE、DEBUG、INFO(默认)、WARN、ERROR、CRITICAL

5.4.2 生成有关参数

参数名 说明
-D 单文件夹模式,即生成结果是一个目录,各种第三方依赖、资源和可执行程序同时存储在该目录。默认;
-F 单文件模式,即生成结果是一个可执行文件,所有的第三方依赖、资源和代码均被打包进该可执行文件内
–specpath DIR 指定spec文件的生成路径,默认当前目录。
-n、–name NAME 修改生成的可执行文件和spec的文件名。

5.4.3 资源有关参数

参数名 说明
–add-data SRC 要添加到可执行文件中的其他非二进制文件或文件夹。可多次使用。
–add-binary SRC 要添加到可执行文件中的其他二进制文件。可多次使用
-p、–paths DIR 用于搜索导入的路径(如使用PYTHONPATH)。
–hidden-import MODULENAME 显示打包额外的py库
–collect-submodules MODULENAME 从指定的包或模块收集所有子模块。
–collect-data MODULENAME 从指定的包或模块收集所有数据。
–collect-binaries MODULENAME 从指定的包或模块收集所有二进制文件。
–collect-all MODULENAME 收集指定包或模块中的所有子模块、数据文件和二进制文件
–copy-metadata PACKAGENAME 复制指定包的元数据。
–recursive-copy-metadata PACKAGENAME 复制指定包及其所有依赖项的元数据。
–additional-hooks-dir HOOKSPATH 指定用户的hook目录。系统hook在Pyinstaller\hooks目录下
–runtime-hook RUNTIME_HOOKS 如果设置了此参数,则runtime-hook会在运行main.py之前被运行
–exclude-module EXCLUDES 需要排除的module,有助于减少生成文件的大小
–key KEY 用于加密Python字节码的密钥。
–splash IMAGE_FILE (实验性的)添加一个带有图像IMAGE_FILE的启动屏幕到应用程序。可以在拆包时显示进度更新。

5.4.4 如何生成有关参数

参数名 说明
-d 打包时,会输出一些log,有助于查错
–python-option PYTHON_OPTION 指定一个命令行选项,在运行时传递给Python解释器。
-s、–strip 优化符号表,不建议在windows上使用
–noupx 不要使用UPX,即使它可用
–upx-exclude FILE 使用upx时防止二进制文件被压缩。

5.4.5 Windows和Mac特有的参数

参数名 说明
-c、–console、–nowindowed 显示命令行窗口
-w、–windowed、–noconsole 不显示命令行窗口
-i、–icon ICO 为最后的可执行程序指定图标
–disable-windowed-traceback 在window (noconsole)模式下禁用未处理异常的回溯转储

5.4.6 Windows特有的参数

参数名 说明
–version-file FILE 添加版本信息文件
-m、–manifest FILE 添加manifest文件
–no-embed-manifest 生成外部.exe文件。
-r、–resource RESOURCE 向Windows可执行文件添加或更新资源。
–uac-admin 使用此选项将创建一个清单,该清单将在应用程序启动时请求提升
–uac-uiaccess 使用此选项允许提升的应用程序与远程桌面一起工作。

5.4.7 常用参数

-h、–help 查看Pyinstaller所有命令的用法和帮助
-y、–noconfirm 当存在dist时,不询问,直接覆盖
–clean 打包前先清理缓存和临时文件,重新打包建议加上该命令
–log-level LEVEL 限制打包时在控制台中输出的日志等级。一共有6个等级,由低到高分别为TRACE、DEBUG、INFO(默认)、WARN、ERROR、CRITICAL
-D 单文件夹模式,即生成结果是一个目录,各种第三方依赖、资源和可执行程序同时存储在该目录。默认;
-F 单文件模式,即生成结果是一个可执行文件,所有的第三方依赖、资源和代码均被打包进该可执行文件内
–hidden-import MODULENAME 显示打包额外的py库
-c、–console、–nowindowed 显示命令行窗口
-w、–windowed、–noconsole 不显示命令行窗口
-i、–icon ICO 为最后的可执行程序指定图标

相关文章:

[Python进阶] 程序打包之Pyinstaller参数介绍

5.4 Pyinstaller参数介绍 5.4.1 选项参数 参数名 说明 -h、–help 查看Pyinstaller所有命令的用法和帮助 -v、–version 查看当前Pyinstaller版本 –distpath DIR 设置dist位置,默认当前目录 –workpath WORKPATH 设置build位置,默认当前目录 -y、–no…...

Python中如何判断列表中的元素,是否在一段文本中??

#我的Python教程 #官方微信公众号:wdPython1.要判断列表中的每个元素是否在一段文本中,可以使用Python中的字符串的 in 运算符来实现。以下是一个示例代码: text "Hello, how are you today?" word_list ["Hello", &…...

spark Structured报错解决

报错,不想看原因的直接去解决方案试试 Exception in thread "main" java.lang.IllegalArgumentException: Pathname /C:/Users/Administrator/AppData/Local/Temp/1/temporary-611514af-8dc5-4b20-9237-e5f2d21fdf88/metadata from hdfs://master:8020/C…...

Matter 协议系列:发现

Commissionable 发现 Commissionable 发现发生在投入使用(未绑定)之前,指的是发现和识别Commissionable 节点的过程。有三种方法可以通过这些方法中的任何一种来 广播Commissionable 的节点: 蓝牙低功耗(BLE&#xff…...

Oracle 12c Docker镜像配置SSL

一、Docker运行Oracle 12c服务 a.拉取镜像 docker pull truevoly/oracle-12cb.运行 docker run -d -p 1521:1521 -p 2484:2484 -v /data/oracle/:/opt/oracle --name oracle_12c truevoly/oracle-12cc.查看日志 docker logs -f oracle_12cd.出现如下信息,则启动…...

版本控制系统git:一文了解git,以及它在生活中的应用,网站维护git代码,图导,自动化部署代码

目录 1.Git是什么 2.git在生活中的应用 2.1git自动化部署代码 3.网站维护git代码 3.1如何在Git代码托管平台等上创建一个仓库 3.2相关文章 4.ruby实现基础git 4.1.Git add 4.2 Git commit 4.3 Git log 1.Git是什么 Git是一个版本控制系统,它可以追踪文件的…...

uqrcode+uni-app 微信小程序生成二维码

使用微信小程序需要弹出动态二维码的需求,从插件市场选了一个下载次数较多的组件引入到项目中uqrcode,使用步骤如下: 1、从插件市场下载 插件地址:https://ext.dcloud.net.cn/plugin?id1287,若你是跟我一样是用uni-…...

从零开始的 MyBatis 拦截器之旅:实战经验分享

文章目录 MyBatis拦截器可以做什么?Mybatis核心对象介绍四大核心对象如何实现?接口讲解Interceptor接口intercept方法plugin方法setProperties 完整SQL打印拦截器实战拦截器实现拦截器注册 MyBatis拦截器可以做什么? MyBatis拦截器是MyBatis…...

网络编程day05(IO多路复用)

今日任务&#xff1a; TCP多路复用的客户端、服务端&#xff1a; 服务端代码&#xff1a; #include <stdio.h> #include <sys/types.h> #include <sys/socket.h> #include <arpa/inet.h> #include <netinet/in.h> #include <unistd.h> …...

人声分离网站,帮你快速提取视频中的人声和背景音乐

今天给大家带来一个可以分离人声的网站——音分轨&#xff0c;他运用人工智能算法可以将音频中的人声部分和音乐部分分离&#xff0c;使我们的视频制作过程可以更方便。 我们点击右下角“选择文件”上传一个音频&#xff0c;上传好音频后&#xff0c;人工智能就开始处理我们上传…...

计算机网络常见问题

1.谈一谈对OSI七层模型和TCP/IP四层模型的理解&#xff1f; 1.1.为什么要分层&#xff1f; 在计算机中网络是个复杂的系统&#xff0c;不同的网络与网络之间由于协议&#xff0c;设备&#xff0c;软件等各种原因在协调和通讯时容易产生各种各样的问题。例如&#xff1a;各物流…...

上PICO,沉浸式观看亚运直播,参与跨国界游戏竞技

备受瞩目的杭州第19届亚运会&#xff0c;将于9月23日正式开幕。据悉&#xff0c;这也是有史以来项目最多的一届亚运会&#xff0c;除部分传统奥运项目外&#xff0c;还包含武术、藤球、板球、克柔术、柔术等亚洲特色项目&#xff0c;以及霹雳舞、电子竞技等深受年轻人喜爱的新兴…...

无重复字符的最长子串 - 力扣(LeetCode)

3. 无重复字符的最长子串 - 力扣&#xff08;LeetCode&#xff09; 给定一个字符串 s &#xff0c;请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: s "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc"&#xff0c;所以其长…...

企业行政许可的种类有哪些?

从行政许可的性质、功能和适用条件的角度来说&#xff0c;大体可以划分为五类&#xff1a;普通许可、特许、认可、核准、登记。 1.普通许可 普通许可是一种允许符合特定条件的相对方行使某种权利的行为。在许多情况下&#xff0c;需要普通许可的活动都与国家安全、公共安全息…...

Flink--4、DateStream API(执行环境、源算子、基本转换算子)

星光下的赶路人star的个人主页 注意力的集中&#xff0c;意象的孤立绝缘&#xff0c;便是美感的态度的最大特点 文章目录 1、DataStream API1.1 执行环境&#xff08;Execution Environment&#xff09;1.1.1 创建执行环境 1.2 执行模式&#xff08;Execution Mode&#xff09;…...

#循循渐进学51单片机#指针基础与1602液晶的初步认识#not.11

1、把本节课的指针相关内容&#xff0c;反复学习3到5遍&#xff0c;彻底弄懂指针是怎么回事&#xff0c;即使是死记硬背也要记住&#xff0c;等到后边用的时候可以实现顿悟。学会指针&#xff0c;就是突破了C语言的一道壁垒。 2&#xff0c;1602所有的指令功能都应用一遍&#…...

Lua学习笔记:探究package

前言 本篇在讲什么 理解Lua的package 本篇需要什么 对Lua语法有简单认知 对C语法有简单认知 依赖Visual Studio工具 本篇的特色 具有全流程的图文教学 重实践&#xff0c;轻理论&#xff0c;快速上手 提供全流程的源码内容 ★提高阅读体验★ &#x1f449; ♠ 一级…...

【面试经典150 | 双指针】三数之和

文章目录 写在前面Tag题目来源题目解读解题思路方法一&#xff1a;暴力枚举方法二&#xff1a;双指针 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法&#xff0c;两到三天更新一篇文章&#xff0c;欢迎催更…… 专栏内容以分析题目为主&#xff0c;并附带一些对…...

现代卷积网络实战系列3:PyTorch从零构建AlexNet训练MNIST数据集

1、AlexNet AlexNet提出了一下5点改进&#xff1a; 使用了Dropout&#xff0c;防止过拟合使用Relu作为激活函数&#xff0c;极大提高了特征提取效果使用MaxPooling池化进行特征降维&#xff0c;极大提高了特征提取效果首次使用GPU进行训练使用了LRN局部响应归一化&#xff08…...

Django系列:Django应用(app)的创建与配置

Django系列 Django应用&#xff08;app&#xff09;的创建与配置 作者&#xff1a;李俊才 &#xff08;jcLee95&#xff09;&#xff1a;https://blog.csdn.net/qq_28550263 邮箱 &#xff1a;291148484163.com 本文地址&#xff1a;https://blog.csdn.net/qq_28550263/article…...

第19节 Node.js Express 框架

Express 是一个为Node.js设计的web开发框架&#xff0c;它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用&#xff0c;和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互

物理引擎&#xff08;Physics Engine&#xff09; 物理引擎 是一种通过计算机模拟物理规律&#xff08;如力学、碰撞、重力、流体动力学等&#xff09;的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互&#xff0c;广泛应用于 游戏开发、动画制作、虚…...

FastAPI 教程:从入门到实践

FastAPI 是一个现代、快速&#xff08;高性能&#xff09;的 Web 框架&#xff0c;用于构建 API&#xff0c;支持 Python 3.6。它基于标准 Python 类型提示&#xff0c;易于学习且功能强大。以下是一个完整的 FastAPI 入门教程&#xff0c;涵盖从环境搭建到创建并运行一个简单的…...

ESP32读取DHT11温湿度数据

芯片&#xff1a;ESP32 环境&#xff1a;Arduino 一、安装DHT11传感器库 红框的库&#xff0c;别安装错了 二、代码 注意&#xff0c;DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...

【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】

1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件&#xff08;System Property Definition File&#xff09;&#xff0c;用于声明和管理 Bluetooth 模块相…...

Springboot社区养老保险系统小程序

一、前言 随着我国经济迅速发展&#xff0c;人们对手机的需求越来越大&#xff0c;各种手机软件也都在被广泛应用&#xff0c;但是对于手机进行数据信息管理&#xff0c;对于手机的各种软件也是备受用户的喜爱&#xff0c;社区养老保险系统小程序被用户普遍使用&#xff0c;为方…...

Java毕业设计:WML信息查询与后端信息发布系统开发

JAVAWML信息查询与后端信息发布系统实现 一、系统概述 本系统基于Java和WML(无线标记语言)技术开发&#xff0c;实现了移动设备上的信息查询与后端信息发布功能。系统采用B/S架构&#xff0c;服务器端使用Java Servlet处理请求&#xff0c;数据库采用MySQL存储信息&#xff0…...

Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)

引言 在人工智能飞速发展的今天&#xff0c;大语言模型&#xff08;Large Language Models, LLMs&#xff09;已成为技术领域的焦点。从智能写作到代码生成&#xff0c;LLM 的应用场景不断扩展&#xff0c;深刻改变了我们的工作和生活方式。然而&#xff0c;理解这些模型的内部…...

Caliper 负载(Workload)详细解析

Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...

Docker拉取MySQL后数据库连接失败的解决方案

在使用Docker部署MySQL时&#xff0c;拉取并启动容器后&#xff0c;有时可能会遇到数据库连接失败的问题。这种问题可能由多种原因导致&#xff0c;包括配置错误、网络设置问题、权限问题等。本文将分析可能的原因&#xff0c;并提供解决方案。 一、确认MySQL容器的运行状态 …...