Python程序的轻量化打包及模块缺失问题的解决

这篇具有很好参考价值的文章主要介绍了Python程序的轻量化打包及模块缺失问题的解决。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

摘要

采用Pyinstalle插件对python编写好的程序打包成exe文件,一般有两种方式:一直直接采用当前的编写环境打包,这种方式一般不会出错,但由于将整体环境打包,导致将程序不需要的插件也包含在内,导致打包后的软件很大,打开也比较慢,不宜后期使用;另一种方式重新建立虚拟环境,在虚拟环境中只安装程序运行必需的插件,然后在打包,这样打包后的软件较小。本文主要介绍在虚拟环境中打包的方法,主要流程是:采用pycharm安装虚拟环境、安装程序必要的插件、打包、解决部分未导入插件问题。

1.虚拟环境的建立

打开pycharm软件,依次点击File/New Project,在Location中设置虚拟环境路径,在New environment using中设置选择”Virtualenv”,Base interpreter选择某个Python版本,没有的话先python官网下载装一个。

Python程序的轻量化打包及模块缺失问题的解决

 图1 虚拟环境建立

2.安装程序必要的插件

依次点击File/Settiings,在打开Settings对话框中选择建立好的环境,点击“+”按钮,在弹出的Available Packages对话框的搜索栏输入想要安装的插件,选中插件后点击Install Package安装。如之前没有安装过Pyinstalle插件,也可在此步安装,否则不需要再安装。

Python程序的轻量化打包及模块缺失问题的解决

 图2 插件的安装

3.打包操作

将python编写好的程序拷贝到建立的虚拟环境文件夹下,测试没有问题后即可开始打包。在pytharm的Terminal输入框中输入以下命令后:“Pyinstaller -F -w 文件名.py”,等待打包结束。打包技术后生成的exe文件在dist文件夹里面。

Python程序的轻量化打包及模块缺失问题的解决

 图3 程序的打包

4.打包的软件运行提示缺少Module的问题

由于第三方包隐式调用其他包,导致没有被打包进入,软件运行会提示:ImportError: No module named “模块名”。

解决办法:以记事本打开生成的“XX.spec”,在hiddenimports中添加相应的提示缺少的模块名。然后在pytharm的Terminal输入框中输入以下命令后:“Pyinstaller 文件名.spec”,等待打包结束。结束后再运行生成的软件测试是否成功,不成功的话继续添加提示缺少的其他模块,直到软件正常运行。

Python程序的轻量化打包及模块缺失问题的解决

 图4 缺失模块的补充

参考文档文章来源地址https://www.toymoban.com/news/detail-469966.html

  1. 打包完整教程:你似乎来到了没有知识存在的荒原 - 知乎
  2. pycham建立虚拟环境的方法:https://blog.csdn.net/wuzaishiniuzai/article/details/105895715?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-105895715-blog-112078218.pc_relevant_3mothn_strategy_recovery&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-105895715-blog-112078218.pc_relevant_3mothn_strategy_recovery&utm_relevant_index=1
  3. 解决打包后缺失模块的方法:https://blog.csdn.net/kobeyu652453/article/details/108779501

到了这里,关于Python程序的轻量化打包及模块缺失问题的解决的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 解决多模块内核心模块有接口打包成jar后被依赖并调用遇到的问题(springcloud集成ruoyi.quartz)

    项目准备开发个新功能,刚好很喜欢ruoyi写的任务调度,因此想到了集成ruoyi.quartz模块 ,遇到了很多问题: 首先因为 ruoyi.quartz模块依赖了ruoyi.common模块,因此第一步我需要把common模块一部分依赖项复制到了quartz模块内(复制的内容就是common文件夹内的,未用到的部门被我剔除

    2024年02月12日
    浏览(46)
  • SpringBoot Maven 项目打包的艺术--主清单属性缺失与NoClassDefFoundError的优雅解决方案

    这两个问题的出现场景是,你打包完一个SpringBoot、Maven项目,上传Jar包到服务器运行的时候遇到的。也算是比较经典的两个问题了,如果你在打包项目的时候,很容易遇到,这篇文章就是用来一劳永逸地解决它们。 1.1、Jar包运行:没有主清单属性 解决方案 其实这个问题主要

    2024年04月14日
    浏览(29)
  • 用 Pyinstaller 模块将 Python 程序打包成 exe 文件(全网最全面最详细,万字详述)

    目录 一、打包前置知识 1.1 什么是 exe 可执行文件? 1.2 为什么要将 Python 程序打包为 exe 可执行文件? 1.3 为什么 Python 程序不能直接运行呢? 1.4 我们用什么来打包 Python 文件呢?  1.5 打包有哪几种分类呢? 二、打包的方法 2.1 简单打包 2.1.1 前置 2.1.2 直接打包 2.1.3 稍微“加

    2024年02月04日
    浏览(59)
  • QT运行exe遇到Qt5Core.dll等dll文件缺失及无法定位程序输入点于动态链接库问题解决方法

    QT运行exe相关问题解决方法, 保姆级 ,亲测有效! 如果运行exe文件出现的问题如下图所示,这是由于安装路径缺失相应的dll导致的。(其他dll文件缺失解决方法同理) 解决方法: 在自己下载下来的文件中寻找相应的dll文件并复制到安装路径中。以我自己为例: 在上图的路

    2024年02月17日
    浏览(53)
  • 完美解决Qt中关于Mysql程序的连接、打包等各类问题

    分享Qt如何连接Mysql、如何打包Mysql程序,完美解决连接和打包Mysql程序所出现的各类问题。        在Qt项目开发过程中,如果涉及到数据的存储,那么肯定会用到数据库,本篇文章以Mysql数据库为例,讲述Qt如何连接Mysql、如何打包含有Mysql的程序,并解决客户收到程序后无法

    2024年02月03日
    浏览(44)
  • 使用pyinstaller打包python文件遇到的问题和解决方法

    情况1 :当所使用的代码都在一个.py文件中,且该代码中没有调用其他文件和import自己写的函数时 例如: 打包下面这个检查输入的ip是否符合规范的程序ipcheck.py,程序中只Import了自带的库re 下载pyinstaller 使用Pyinstaller打包。先进入该程序所在的文件夹,在文件资源管理器的文

    2024年02月06日
    浏览(57)
  • 关于Qt程序打包后运行库依赖的常见问题分析及解决方法

    目录 一. 大致如下常见问题: (1)找不到程序所依赖的Qt库 version `Qt_5\\\' not found (required by (2)Could not Load the Qt platform plugin \\\"xcb\\\" in \\\"\\\" even though it was found (3)打包到在不同的linux系统下,或者打包到高版本的相同系统下,运行程序时,直接提示段错误即segmentation fault,或者I

    2023年04月17日
    浏览(58)
  • Electron打包的桌面应用程序,运行中程序黑屏、白屏等渲染进程崩溃问题解决

    使用 Electron 打包 web 项目为桌面应用程序,由于运行环境的硬件条件或其他一些原因,导致程序运行过程中黑屏、白屏、崩溃。 2.1 依赖版本: electron : v8.2.1 electron-log : v4.1.1 electron-packager : v14.2.1 2.2 运行环境 win7 x86 2.3 分析过程 2.3.1 排除 程序本身运行不会“白屏”,但运行

    2024年02月07日
    浏览(54)
  • python安装pygame模块可能问题解决

    一般我们添加python中模块有两种方法 1、 在开发软件pycharm中文件中设置-项目 然后点击加号,输入自己要安装的模块,如pygame 但是我这种安装存在可能安装失败,但是简单 第二种就是用系统cmd命令进行安装 win+R打开cmd,先输入pip install wheel安装wheel工具,检查pip是不是最新版

    2024年02月12日
    浏览(47)
  • Qt 打包发布程序,解决找不到msvcp140.dll等动态库问题正确方案

    Remember to call vcvarsall.bat to complete environment setup! Warning: Cannot find Visual Studio installation directory, VCINSTALLDIR is not set. Qt 找不到 msvcp140.dll, msvcp140d.dll, vcruntime140.dll, vcruntime140d.dll, ucrtbased.dll 当你用 MSVC编译器编写的程序 ,在使用Qt的打包工具windeployqt.exe时,在终端第二行会看到 “R

    2024年02月03日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包