PyInstaller 打包python 程序 成 可执行文件

pyinstaller --onefile --name my_project --add-data "config/config.json:config" main.py

要将整个 Python 项目打包成一个可执行文件,可以使用 PyInstaller 来完成这个任务。以下是如何将整个项目打包成可执行文件的步骤:

1. 安装 PyInstaller:

确保你已经安装了 PyInstaller,如果没有安装,可以使用以下命令进行安装:

bash

pip install pyinstaller

2. 导航到项目目录:

打开终端或命令提示符,进入你的项目根目录(包含主 Python 脚本的目录)。

3. 运行 PyInstaller 命令:

在项目目录下运行以下命令,将整个项目打包成一个可执行文件:

bash

pyinstaller --onefile --name your_executable_name your_entry_script.py

参数说明:
  • --onefile:将所有依赖项打包成一个单独的可执行文件。

  • --name:生成的可执行文件的名称,你可以指定一个自定义的名字。

  • your_entry_script.py:项目的入口脚本(通常是包含 if __name__ == '__main__': 的脚本)。

例如,如果你的项目入口脚本是 main.py,你可以这样运行:

bash

pyinstaller --onefile --name my_project main.py

4. 处理额外资源(如数据文件、配置文件):

如果你的项目中有需要包含的额外资源文件(比如 JSON、配置文件、图片等),你可以使用 --add-data 参数来将这些文件打包进去。

格式是:

bash

pyinstaller --onefile --name my_project --add-data "path_to_file_or_folder:target_folder_in_dist" main.py

例如:

bash

pyinstaller --onefile --name my_project --add-data "config/config.json:config" main.py

这样会将 config/config.json 文件添加到生成的可执行文件中。

5. 找到生成的可执行文件:

打包完成后,PyInstaller 会生成 dist 文件夹,里面包含生成的可执行文件。

6. 运行可执行文件:

进入 dist 目录,运行生成的可执行文件。

  • 在 Windows 上:

    bash

    dist\your_executable_name.exe

  • 在 Linux/Mac 上:

    bash

    ./dist/your_executable_name

7. 其他常用参数:

  • --icon=icon.ico:为可执行文件设置自定义图标。

  • --hidden-import=module_name:如果有模块未被自动识别,可以手动指定导入。

  • --noconsole:如果你不希望在执行时显示终端窗口(适用于图形界面应用程序),可以使用这个参数。

例子:

假设你的项目结构如下:

bash

my_project/ │ ├── main.py # 项目的入口 ├── utils.py # 辅助模块 ├── config/ │ └── config.json # 配置文件 └── assets/ └── logo.png # 资源文件

你可以使用如下命令将整个项目打包:

bash

pyinstaller --onefile --name my_project_executable --add-data "config/config.json:config" --add-data "assets/logo.png:assets" main.py

打包完成后,你可以在 dist/my_project_executable 目录中找到打包好的可执行文件。

这样,你的整个项目就被打包成了一个可执行文件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/25257.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【新手入门】SQL注入之盲注

一、引言 在我们的注入语句被带入数据库查询但却什么都没有返回的情况我们该怎么办? 例如应用程序返回到一个"通用的"的页面,或者重定向一个通用页面(可能为网站首页)。这时,我们之前学习的SQL注入的办法就无法使用了。这种情况我们称之为无…

字段对比清洗

import pandas as pd import psycopg2 from psycopg2 import sql# 数据库连接配置 DB_CONFIG {"host": "","user": "","password": "","dbname": "","port": , }def get_excel_fi…

阿里开源正式开园文生视频、图生视频模型-通义万相 WanX2.1

简介 发布时间与背景 通义万相 Wan2.1 模型于 2025年1月 发布,并迅速登顶视频生成领域权威评测 Vbench 的榜首,超越了包括 Sora、HunyuanVideo、Minimax 等国内外知名模型,并于这周开源。它是阿里云在 AI 视频生成领域的最新成果&#xff0…

Python的那些事第三十四篇:基于 Plotly 的交互式图表与仪表板设计与应用

基于 Plotly 的交互式图表与仪表板设计与应用 摘要: 本文深入探讨了 Plotly 这一强大的交互式图表和仪表板库。首先介绍了 Plotly 的背景与发展历程,随后详细阐述了其核心功能特性,包括丰富的图表类型、高度的自定义能力以及便捷的交互操作。通过实际案例分析和示例代码展示…

英文论文查重,Turnitin和IThenticate两个系统哪个更合适?

Turnitin系统和IThenticate系统都是检测英文论文的查重系统,但是两者之间还是有一些不一样的。 下面针对这两个系统给大家具体分析一下。 一、Turnitin系统 Turnitin检测系统: https://truth-turnitin.similarity-check.com Turnitin是世界上主流的…

[Linux]项目自动化构建工具-make/Makefile

项目自动化构建工具-make/Makefile make与Makefile单文件Makefile多文件Makefile 缓冲区 首先理清多文件之间的关系: 这里为什么没有包含test.h头文件?因为在当前工作目录下,因此不需要包含test.h,如果把test.h移到上一级目录&…

ArcGIS Pro中打造精美高程渲染图的全面指南

一、引言 高程渲染图是地理信息系统(GIS)中用于展示地形地貌的重要工具。一张精美的高程渲染图,不仅能够清晰地呈现地形的起伏变化,还能增强视觉表现力,使得数据更加生动、直观。ArcGIS Pro作为一款强大的GIS软件&…

ollama本地部署DeepSeek(Window图文说明)

目录 1. ollama下载2. 环境变量3. deepseek下载4. 彩蛋 1. ollama下载 安装包下载:Window安装包 命令行方式安装:(不推荐使用exe方式进行安装,默认会在C盘路径下) 点击install之后: 2. 环境变量 先配…

sqlilab 46 关(布尔、时间盲注)

sqlilabs 46关(布尔、时间盲注) 46关有变化了,需要我们输入sort,那我们就从sort1开始 递增测试: 发现测试到sort4就出现报错: 我们查看源码: 从图中可看出:用户输入的sort值被用于查…

【02】Cocos游戏开发引擎从0开发一款游戏-cocos项目目录结构熟悉-调试运行项目-最重要的assets资源文件认识-场景sense了解-优雅草卓伊凡

【02】Cocos游戏开发引擎从0开发一款游戏-cocos项目目录结构熟悉-调试运行项目-最重要的assets资源文件认识-场景sense了解-优雅草卓伊凡 开发背景 接下来我们直接打开我们的项目开始进一步操作, 实战开发 导入项目 我把得到的项目解压到本地,我们开…

spring结合mybatis多租户实现单库分表

实现单库分表 思路:student表数据量大,所以将其进行分表处理。一共有三个分表,分别是student0,student1,student2,在新增数据的时候,根据请求头中的meta-tenant参数决定数据存在哪张表表。 数…

数据结构:Top-K问题详解

一.Top-K问题 #include<stdio.h> //先自主创建n个数据 void CreateNDate() {// 造数据int n 100000;srand(time(0));//表示随时间初始化随机生成数的种子const char* file "data.txt";///创建一个文件FILE* fin fopen(file, "w");//“只写”写入创…

基于 Flink CDC YAML 的 MySQL 到 Kafka 流式数据集成

本教程的演示都将在 Flink CDC CLI 中进行&#xff0c;无需一行 Java/Scala 代码&#xff0c;也无需安装 IDE。 这篇教程将展示如何基于 Flink CDC YAML 快速构建 MySQL 到 Kafka 的 Streaming ELT 作业&#xff0c;包含整库同步、表结构变更同步演示和关键参数介绍。 准备阶段…

AI绘画软件Stable Diffusion详解教程(3):Windows系统本地化部署操作方法(通用版)

上一篇教程介绍了如何在本地部署Stable Diffusion专业版&#xff0c;虽然便于技术人员研究&#xff0c;但是普通人使用起来不便捷&#xff0c;每次只能通过cmd窗口的指令形式或者python代码方式来画图&#xff0c;要记很多的指令很繁琐。 本篇教程教您搭建webui版的&#xff0…

进程 ─── linux第10课

目录 回顾上一节 进程 基本概念 描述进程 - PCB task_struct - PCB的一种 task_ struct内容分类 组织进程 下面来介绍task_struct内部 PID 和PPID 子进程与父进程 getpid()和getppid() 杀进程 exe 和 cwd 回顾上一节 1. 如果我们写的程序要访问硬件,必定通过sy…

量子计算的数学基础:复数、矩阵和线性代数

量子计算是基于量子力学原理的一种新型计算模式,它与经典计算机在信息处理的方式上有着根本性的区别。在量子计算中,信息的最小单位是量子比特(qubit),而不是传统计算中的比特。量子比特的状态是通过量子力学中的数学工具来描述的,因此,理解量子计算的数学基础对于深入学…

PostgreSQL_安装部署

一、Windows系统下安装 1.下载安装包 登录PostgreSQL: Downloads官网&#xff1a; 选择14.12版本&#xff0c;点击下载&#xff1a; 2.安装PostgrSQL14.12 双击exe安装包程序&#xff0c;准备安装&#xff1a; 选择安装路径&#xff1a; 选择想安装的工具&#xff1a; 选择数…

Idea 和 Pycharm 快捷键

一、快捷键 二、Pycharm 中怎么切换分支 参考如下 如果在界面右下角 没有看到当前所在的分支&#xff0c;如 “Git:master” 3. 有了 4.

第十四届蓝桥杯:DFS之飞机降落

这道题&#xff0c;由于它的数据范围是非常小的&#xff0c;我们可以采取暴力搜索的措施&#xff0c;把每种情况都枚举出来&#xff0c;如果有能行的情况就返回true 同时我们也要学会剪枝&#xff0c;如果已经确认飞机不能降落&#xff0c;就不要往下再展开了 #include <i…

Oracle 查询表空间使用情况及收缩数据文件

本文介绍Oracle收缩数据文件的相关操作&#xff0c;运维工作中有时会需要通过收缩数据文件来释放磁盘空间。 数据文件初始化方式&#xff1a; 1.我们创建表空间一般有两种方式初始化其数据文件&#xff0c;即指定初始大小为32G&#xff08;很大的值&#xff09;或指定初始大小为…