Pycharm打包程序为exe文件

Pycharm打包程序为exe文件

【一】导入模块pyinstaller

【1】图片说明

请添加图片描述

【2】文字说明

  • 根据图片顺序执行
    • 首先点击file进入settings界面,在setting界面找到Project下面的Python Interpretor,点击+号进行模块的添加
    • 在搜索框中输入pyinstaller,点击当前导入模块框的左下角Install Package,等待successfully出现即安装成功

【二】开始打包

【1】图片说明

请添加图片描述

【2】文字说明

  • 根据图片顺序执行

    • 返回pycharm项目页,点击左下角的Terminal,确定需要打包执行的文件名(图片里面是main.py),Terminal框中输入

    • pyinstaller -F main.py
      
    • 等待Terminal框中出现completed successfully即可

【3】结果

  • 在项目目录下会生成两个文件夹和一个文件

    • build 文件夹: 包含用于构建过程的临时文件,通常包括一些中间文件和构建过程中生成的其他文件。这个文件夹可以被删除,它的存在主要是为了帮助构建过程。
    • dist 文件夹: 包含最终生成的可执行文件和其他相关文件。
    • main.spec 文件:用于配置 PyInstaller 打包的脚本。
  • 可执行文件exe就在dist文件中

  • 可执行文件exe就在dist文件中

  • 可执行文件exe就在dist文件中

    请添加图片描述

【三】常用参数说明

【1】-F

  • 将生成的可执行文件打包成一个单独的文件,而不是默认的多个文件
  • 建议加上-F,多个文件夹里面的可执行文件脱离文件夹无法执行
pyinstaller -F main.py
# 加上 -F 文件结构
|-- dist
|   |-- main.exe
|   |-- 02
|   	|-- 03

    
# 不加 -F 文件结构
|-- dist
|   |-- main
|   	|-- internal
|   	|-- main.exe

【2】-w

  • 用于控制警告(Warnings)的显示
    • all:显示所有警告。
    • default:使用默认设置,即根据 PyInstaller 的默认设置来处理警告。
    • ignore:忽略所有警告,不显示。
  • 通常在还没有定稿的情况下要控制台窗口,在程序完成确定以后加上-W不显示控制台窗口
pyinstaller -F -w  main.py

【3】-n

  • 用于指定生成的可执行文件的名称
  • -n后面跟着的字符串就是生成可执行文件exe的名称
pyinstaller -F -w -n my_func main.py

【4】-i

  • 用于指定生成的可执行文件的图标文件

  • 该选项后跟图标文件的路径(放在当前路径可以不添加)

  • 图标文件需要是.ico文件

  • 在线制作ico图标网址:在线制作ico图标

  • 请添加图片描述

pyinstaller -F -w -i myphoto.ico -n my_func main.py

【5】其他

  • 原图片地址:PyInstaller打包Python项目详解 - 丶小白吖 - 博客园 (cnblogs.com)

请添加图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Proteus仿真】【Arduino单片机】水箱液位监控系统

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真Arduino单片机控制器,使用LCD1602液晶、按键、蜂鸣器、液位传感器、ADC转换器、水泵等。 主要功能: 系统运行后,LCD1602显示当前水位、上下限阈…

正交投影矩阵与透视投影矩阵的推导

正交投影矩阵 正交投影矩阵的视锥体是一个长方体 [ l , r ] [ b , t ] [ f , n ] [l,r][b,t][f,n] [l,r][b,t][f,n],我们要把这个长方体转换到一个正方体 [ − 1 , 1 ] [ − 1 , 1 ] [ − 1 , 1 ] [-1,1][-1,1][-1,1] [−1,1][−1,1][−1,1]中,如下图所…

【KD】知识蒸馏(knowledge distillation)简单介绍

最近学到了知识蒸馏的相关知识,来简单总结一下૮꒰ ˶• ༝ •˶꒱ა。 知识蒸馏 知识蒸馏,是一种模型压缩的手段。通过训练学生模仿教师的行为,将嵌入在大的教师模型中的知识迁移到小的学生模型。 例如,TinyBERT(Jiao et al.,2…

C++结合OpenCV:图像的基本表示方法

1.二值图像 二值图像是指仅仅包含黑色和白色两种颜色的图像。在计算机中,通过一个栅格状排列的数据集(矩阵)来表示和处理图像。例如,图1是一个字母A的图像,计算机在处理该图像时,会首先将其划分为一个个的小…

Mysql show Profiles详解

1.简介 show profile 和 show profiles 命令用于展示SQL语句的资源使用情况,包括CPU的使用,CPU上下文切换,IO等待,内存使用等,这个命令对于分析某个SQL的性能瓶颈非常有帮助,借助于show profile的输出信息&…

jenkins+selenium+python实现web自动化测试

jenkinsselenium可以做到对web自动化的持续集成。 Jenkins的基本操作: 一、新建视图及job 新建视图: 新建job: 可以选择构建一个自由风格的软件项目或者复制已有的item 二、准备工作: 安装Jenkins插件,SSH plugin …

快速入门Visual Studio 2022开发.Net Framework研发环境指南

IDE工具 Visual Studio 2022 Vs2022企业版 - VisualStudioSetup.exe Visual Studio Code VSCodeUserSetup-x64-1.66.2.exeVSCodeUserSetup-x64-1.67.0-insider.exe IDE环境 编程字体YaHei.Consolas YaHei.Consolas.1.12.ttf IDE插件 Visual Studio Code常用插件 Chinese…

分布式锁3: zk实现分布式锁4 使用临时顺序节点+watch监听+可重入(threadLocal)

一 zk实现分布式锁的可重入性 1.1 使用ThreadLocal属性 引入ThreadLocal线程局部变量保证zk分布式锁的可重入性。 1.2 关键代码说明 1.3 代码 1.3.1 初始化客户端 1.3.2 分布式锁代码 package com.atguigu.distributed.lock.config;import com.baomidou.mybatisplus.core…

Java:Lambda表达式、方法引用

文章目录 1、Lambda表达式1.1 Lambda表达式体验1.2 Lambda表达式的省略形式1.3 Lambda表达式练习 2、方法引用体验3、方法引用符4、引用静态方法5、引用对象的实例方法6、引用类的实例方法7、引用构造方法8、引用数组的构造方法9、方法引用练习9.1 练习19.2 练习29.3 练习3 10、…

差分电路原理以及为什么输出电压要偏移

我们在使用放大器芯片的时候,除了对放大器芯片本身应用外,通常还需要搭建一些外围电路来满足放大器芯片的使用条件,最终满足应用的功能,下面通过一个差分电路来熟悉这些应用。 差分运算放大电路,对共模信号得到有效抑…

函数——系统函数2(c++)

这次主要就只有一个系统函数: (注:a为变量名) 名称 用法 用处 sqrt sqrt(a) 算出变量a的平方根 (注:使用sqrt函数时,需要用到头文件 #i…

leetcode算法题之递归--综合练习(一)

此专题对我们之前所学的关于递归的内容进行一个整合,大家可以自行练习,提升自己的编码能力。 本章目录 1.找出所有子集的异或总和在求和2.全排列II3.电话号码的字母组合4.括号生成5.组合6.目标和7.组合总和8.字母大小写全排列9.优美的排列 1.找出所有子…

Python自动点击器

一、如何制作一个Python自动点击器? 当用户单击开始键时,代码将从键盘获取输入,并在用户单击退出键时终止自动点击器,自动点击器开始单击指针放置在屏幕上的任何位置。我们将在这里使用pynput模块。 二、什么是自动点击器&#…

FineBI实战(1):mysql实战案例简介

下面我通过案例来介绍FineBI的使用。 1 业务背景介绍 本案例围绕某个互联网小型电商的订单业务来开发。某电商公司,每天都有一些的用户会在线上采购商品,该电商公司想通过数据分析,查看每一天的电商经营情况。例如:电商公司的运…

并发(2)

目录 6.通常线程有哪几种使用方式? 7.基础线程机制有哪些? 8.线程的中断方式有哪些? 9.线程的互斥同步方式有哪些?如何比较和选择? 10.Synchronized可以作用在哪里? 6.通常线程有哪几种使用方式&#x…

Python基础知识总结3-面向对象进阶知识

面向对象三大特征介绍 继承子类扩展父类语法格式关于构造函数:类成员的继承和重写查看类的继承层次结构 object根类dir() 查看对象属性重写 __str__() 方法 多重继承MRO方法解析顺序super()获得父类定义多态特殊方法和运算符重载特殊属性 对象的浅拷贝和深拷贝组合_…

【提示学习论文五】Conditional Prompt Learning for Vision-Language Models论文原理及复现工作

Conditional Prompt Learning for Vision-Language Models 视觉语言模型的条件提示学习 文章介绍 这篇文章于2022年发表在CVPR(Conference on Computer Vision and Pattern Recognition),作者是kaiyang.zhou, jingkang001, ccloy, ziwei.li…

PostgreSQL的常见错误和解决方法

转载说明:如果您喜欢这篇文章并打算转载它,请私信作者取得授权。感谢您喜爱本文,请文明转载,谢谢。 在学习新的东西时,会犯很多的错误,会遇到很多坑。我们在填坑与犯错中不断进步成长。 以下是在学习pgsql中…

【QT】自定义代理类

目录 1 我们为什么要使用自定义代理类? 2 自定义代理类的基本设计要求 3 自定义代理的功能 4 基于QSpinBox的自定义代理类 5 自定义代理类的使用 1 我们为什么要使用自定义代理类? 传统的模型-视图框架可以让我们实现逻辑展示相分离,我们…

trino-435:dynamic catalog数据库存储代码实现

一、dynamic catalog数据库存储源码分析 dynamic catalog的实现主要涉及到两个类:CoordinatorDynamicCatalogManager、WorkerDynamicCatalogManager,这两个类的详细信息如下: 这两个类主要提供了对catalog的增删改查的方法。trino-435源码中…