python打包之pyinstaller(打包成exe)

这篇具有很好参考价值的文章主要介绍了python打包之pyinstaller(打包成exe)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、安装 pyinstaller

直接pip在线安装

pip install pyinstaller

二、指令介绍

常用指令

-h,–help 查看该模块的帮助信息
-F,-onefile 产生单个的可执行文件
-D,–onedir 产生一个目录(包含多个文件)作为可执行程序
-w,–windowed 指定程序运行时不显示命令行窗口(仅对 Windows 有效)

建议采用生成目录、去除黑框.
生成目录,不易出错。
生成单个文件的话,如果第三方库体积较大,那么最终生成的exe会特别大。

pyinstaller -D -w 源程序.py

三、打包

3.1 保留黑框

1、建立 main.py 程序,为了让控制台窗口不一闪而过,加上等待 5s

from time import sleep


def print_hi(name):
    print(f'Hi, {name}')


if __name__ == '__main__':
    print_hi('PyCharm')
    sleep(5)

文件结构:
python打包之pyinstaller(打包成exe)

2、打包
pycharm 里边切换到终端,然后“+”号右侧下拉选择 “Command Prompt”,此时命令提示符前面会有 (venv),表示当前处于虚拟环境中。
终端默认打开是本地,记得修改成虚拟环境。

在虚拟环境中打包,只会打包项目依赖的第三方库,不会把所有pip已安装的库都打包进去,最终的exe体积小。

执行以下命令,进行打包:

pyinstaller -D main.py

python打包之pyinstaller(打包成exe)

生成的目录,多了spec文件和bulid、dist文件夹。dist里边,存放的就是最终的exe文件。
python打包之pyinstaller(打包成exe)
python打包之pyinstaller(打包成exe)

3、运行
直接双击运行 main.exe,就可以了
python打包之pyinstaller(打包成exe)

3.2 去掉黑框(推荐使用)

1、建立 ReadImg.py 程序
注:cv2模块,需要安装 opencv-python 才能使用。

import cv2 as cv

img = cv.imread('test.jpg', 0)
cv.imshow("ReadImg", img)
cv.waitKey(0)

2、打包
执行以下命令打包:

pyinstaller -D -w ReadImg.py

python打包之pyinstaller(打包成exe)

3、运行
需要把图片 test.png,拷贝到 ReadImg.exe 所在目录。
python打包之pyinstaller(打包成exe)

双击运行:
python打包之pyinstaller(打包成exe)

注:如果代码中用到了 input(),打包时就不能加上 -w,必须保留黑框(控制台窗口),不然会报下面的错误:文章来源地址https://www.toymoban.com/news/detail-445418.html

runtimeerror: input(): lost sys.stdin

到了这里,关于python打包之pyinstaller(打包成exe)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 通过pyinstaller将python项目打包成exe执行文件

    目录 第一步:安装pyinstaller 第二步:获取一个ico图标(也即是自己这个exe文件最后的图标) 第三步:打包 pip install pyinstaller 先从这里获取一个png图片:iconfont-阿里巴巴矢量图标库 再转化成ico图片(推荐256 x 256):PNG转ICO - 在线转换图标文件  可以把得到的ico图片放在pytho

    2024年02月09日
    浏览(40)
  • python项目打包成exe可执行文件(pyinstaller库)

    前言:才入职新公司;进来工作内容,就是将之前的python脚本项目打包成.exe可执行文件;一来方便不同岗位的同事之间使用,二来源码信息不会改动和泄漏。 正因为python具有丰富的第三方库,目前已有数万之多;这里用到的是 \\\'pyinstaller\\\'库; 正文: 两种情况: Ⅰ、单独一个

    2024年02月06日
    浏览(37)
  • python pyinstaller打包常见问题(一):无法生成exe文件/打包闪退

    小游戏程序,本地环境能正常运行 程序调用了wav文件,即音效资源文件 程序调用wav路径正确,也是采用绝对路径 程序制作完成后,进行了以下三步打包操作: 在需要打包的程序的目录上,我进入终端输入以下命令进行打包: 2.1、打开生成的snake.spec文件 2.2、修改Analysis 的

    2024年01月22日
    浏览(54)
  • 含有openpyxl库pyinstaller 打包exe出错python解决方案

    在代码开头添加以下代码在打包。 如遇到错误, win32ctypes.pywin32.pywintypes.error: (110, ‘EndUpdateResource’, ‘系统无法打开指定的设备或文件。’) ,即可能是openpyxl库引发的

    2024年01月25日
    浏览(45)
  • 【Python】conda虚拟环境下使用pyinstaller打包程序为exe

    第一点是,pyinstaller打包需要指定程序中使用的库的路径,新手在这一点上很容易出现问题,导致打包后的exe程序执行的时候显示 缺少模块 。这个问题可能并不能通过简单地指定路径来解决。 第二点就是使用虚拟环境本身的好处了: 可以创建多个不同的Python环境,每个环境

    2024年02月09日
    浏览(43)
  • python pyinstaller spec文件 打包多个python文件为exe应用程序

    使用pyinstaller 单个文件打包 使用pyinstaller 多个文件打包 这里先看下项目文件结构: 编辑PaserAdapter_Test.spec文件 执行打包命令(可指定输出程序存放的路径) 假设使用默认路径 指定程序存放路径 如果在windows系统打包,则dist下会有对应的.exe程序,此时可脱离其他源文件独自

    2024年02月16日
    浏览(39)
  • 【python】之pyinstaller模块,python程序打包成一个可执行exe 文件(超详细)!

    PyInstaller是一个在Windows、GNU/Linux、macOS等平台下将Python程序冻结(打包)为独立可执行文件的工具, 用于在未安装Python的平台上执行Python编写的应用程序 使用pip接口进行安装 1.打开命令行: 切换到要转换的python文件路径,输入上述指令。 (1)-F: 只生成一个单个文件(只有一个

    2024年02月12日
    浏览(51)
  • Python封装——如何把python代码打包成一个可执行的.exe文件,Pyinstaller

    https://pyinstaller.org/en/stable/ Pyinstaller可以打包Win、Linux、MacOS下的python程序,在什么环境下打包的就是什么平台的程序。相对来看,Pyinstaller打包的程序体积大、安全性稍差(容易反编译),但是上手相对简单一些。 安装:cmd下输入pip install Pyinstaller(P大写) 清华大学镜像 pip in

    2024年02月10日
    浏览(54)
  • 使用pyinstaller将具有多个python文件的项目打包为exe(含依赖库)

    1、将需要打包有python文件放到一个文件夹,例如下图所示的Demo文件夹,其中ClickEveryDay.py为主文件,telegram.ico为图标文件。   2、生成主函数对应的spec文件 命令:在Demo文件夹路径下使用:pyi-makespec ClickEveryDay.py,将产生一个ClickEveryDay.spec文件。 3、修改ClickEveryDay.spec文件:加

    2024年02月11日
    浏览(40)
  • Python使用pyinstaller打包成.exe文件执行后闪退的解决办法

    1、程序在PyChram中运行正常,但是用pyinstaller将程序打包成.exe文件执行后闪退; 2、使用cmd在在.exe文件处./执行后,发现提示 No module named ‘ttkbootstrap’ ,没有ttkbootstrap模块; 3、在工程文件的venvLibsite-packages下,确实存在ttkbootstrap包;这个包不知什么原因没打包进.exe文件,

    2024年02月12日
    浏览(39)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包