首页 > 编程语言 >使用PyInstaller将Python代码打包为.exe可执行程序(一)

使用PyInstaller将Python代码打包为.exe可执行程序(一)

时间:2024-10-24 19:17:13浏览次数:3  
标签:可执行文件 文件 exe PyInstaller 依赖 Python 文件夹 可执行程序 打包

一、简介

PyInstaller 是一个用于将 Python 程序打包成独立可执行文件(如.exe 文件用于 Windows 系统、.app 文件用于 Mac 系统等)的第三方库。它能够把 Python 脚本及其所依赖的库文件、资源文件等打包到一个单独的文件中,这样可以方便地将程序分发给其他用户,而无需用户在其机器上安装 Python 环境以及所有的依赖库。

二、主要特点

1、支持多种操作系统,包括 Windows、Mac OS X 和 Linux。

2、自动分析你的 Python 脚本所依赖的第三方库,并将这些依赖库包含在打包文件中。例如,如果你的脚本使用了 numpy、pandas 等库,PyInstaller 会找到这些库的相关文件并一起打包,避免了在目标机器上因为缺少依赖库而导致程序无法运行的问题。

3、支持多种打包模式,如单文件模式(将所有内容打包成一个可执行文件)和单文件夹模式(生成一个包含可执行文件和依赖库的文件夹)。单文件模式便于分发,用户只需要一个文件就可以运行程序;单文件夹模式则在调试和一些特殊情况下可能更有用,比如当你需要查看或修改打包后的依赖库文件时。

三、使用步骤

1、安装

pip install pyinstaller
# 或者指定清华源
pip install pyinstaller -i https://pypi.tuna.tsinghua.edu.cn/simple

2、基本打包命令

假设你有一个名为main.py的 Python 脚本,要将其打包成一个可执行文件,可以在命令行中切换到脚本所在的目录,然后运行:

pyinstaller main.py

这会在当前目录下生成dist和build两个文件夹。dist文件夹中包含了最终的可执行文件(在单文件夹模式下)或者打包后的文件(在单文件模式下),build文件夹则包含了一些中间构建文件。

3、定制化打包

可以通过各种参数来定制打包过程。如,使用-F参数可以指定单文件模式,即:

pyinstaller -F main.py

如果你的程序需要使用一些外部数据文件,如配置文件、图像文件等,你可以使用--add - data参数来将这些文件包含在打包文件中。例如,

pyinstaller -F --add - data "config.ini;." main.py

这个命令会将config.ini文件打包到可执行文件所在的目录中。

四、其他

1、单文件模式下打包后的文件可能会比较大,因为它包含了所有的依赖库和资源。

2、如果你的程序中有动态加载模块的情况,PyInstaller 可能无法自动检测到所有的依赖关系。在这种情况下,你可能需要手动指定一些额外的模块或者路径来确保程序能够正确打包和运行。

3、虽然 PyInstaller 会尽量兼容各种 Python 库和操作系统版本,但在某些情况下还是可能会出现兼容性问题。例如,一些使用了非标准 C 扩展的库可能会在打包后出现问题,这时可能需要对这些库进行特殊处理或者寻找替代方案。

标签:可执行文件,文件,exe,PyInstaller,依赖,Python,文件夹,可执行程序,打包
From: https://blog.csdn.net/w1206143866/article/details/143217309

相关文章

  • 关于python代码PyInstaller介绍
    PyInstaller打包PyInstaller是一个用于将Python程序打包成独立可执行文件的工具,它使得用户无需安装Python环境即可运行你的程序。一、安装PyInstaller使用以下命令安装PyInstaller:pipinstallpyinstaller二、基本使用方法1.打包简单脚本假设我们有一个简单的......
  • 异步&线程池【CompletableFuture&ExecutorService】
    Gulimall一、异步&线程池【ExecutorService】异步场景:为了节约时间和提高系统吞吐量做一些异步任务。异步在java中一般是使用Thread开启一个线程的方式;一、线程池线程池(ThreadPool),是一种基于池化思想的管理线程的工具,可以实现线程的复用,避免线程使用中频繁创建和......
  • 使用electron-builder打包 vue3 项目 exe
    1:配置代理 1)命令行执行  npmconfigedit 2)在打开的记事本添加如下代理:     electron_mirror=https://npmmirror.com/mirrors/electron/   registry=https://registry.npmmirror.com   注意 electron_mirror的路径不是这个https://registry.npmmir......
  • MySQL根据.idb数据恢复脚本,做成了EXE可执行文件
    文章目录1.代码2.Main方法打包3.Jar包打成exe可执行文件4.使用(1.)准备一个表结构一样得数据库(2.)打开软件(3.)输入路径5.恢复成功本文档只是为了留档方便以后工作运维,或者给同事分享文档内容比较简陋命令也不是特别全,不适合小白观看,如有不懂可以私信,上班期间都是在得......
  • 如何恢复 Windows 上 PostgreSQL 14 中被误删的 pg_restore.exe
    如何恢复Windows上PostgreSQL14中被误删的pg_restore.exe方法1:重新安装PostgreSQL14下载PostgreSQL14安装包:前往PostgreSQL官方网站。下载与操作系统版本匹配的PostgreSQL14安装包。安装PostgreSQL:运行安装程序,进行标准安装。安装过程中,选择“Cli......
  • 麒麟系统通过CrossOver软件安装Windows软件(.exe)的详细过程
    1、安装CrossOver要先更新一下软件集:sudoaptupdate再安装KWRE版的微信。sudoaptinstallkylin-kwre-wechat安装成功后打开CrossOver程序:2、添加windows容器介绍:容器有Windows98、windows2000、windowsXP、windowsVista、windows7、windows8、windows1......
  • go1.18版本下 beego/bee安装无法生成exe问题已解决
    转自: https://www.cnblogs.com/leijiangsheng/p/17392795.html我原来的项目是教育学习APP使用gin框架,很多东西都是自己原来实现的。最近开发小程序,需要重新独立后台,又重新找了下go框架研究了下,beego确实是个好框架,至少项目能用到的都考虑进去了。然后发现我本地装了一个下午,be......
  • 简单使用pyinstaller
    pyinstaller介绍PyInstaller用于将Python程序打包成独立的可执行文件(EXE),以便于在没有Python环境的计算机上运行。-F参数-F参数是PyInstaller的一个简写,用于生成单个可执行文件。它与--onefile参数的作用相同。当使用-F参数时,PyInstaller会将所有依赖和资源打包成......
  • 桌面软件/exe程序软件自动化大宝剑--lackey之二次封装以及selenium模仿
    1#lackey二次封装23classlackeyAtion(object):45#初始化,有需要再加6def__init__(self):7self.lackey=lackey.Screen(0)8self.lackey.setAutoWaitTimeout(30)910#截屏需要保存路径,截图的名字11de......
  • QT项目打包成exe文件-非常详细(侧重于解决输出的exe文件没有原项目功能的问题)
    写在前面: 我是研二学生,用qt给老师项目做的一个辅助软件。项目要验收,所以需要打包qt项目成exe文件,但是我死活弄不出来,来回搞了两三天才弄好。特此写下第一篇博客,记录这个过程,并给同样困扰的新手朋友们提供一个方法。我是一个新手,期待大家的批评指正。打包流程: 1、获取初始......