python 打包exe


​ 起因:闲的蛋疼

​ 过程:扯的蛋疼

​ 结果:不疼了

​ 1、起因(闲的蛋疼)

​ 突然的emo,不想干活,于是乎找遍微信好友,群发了十年八辈子不联系的一群人(此办法学习于曾经这样对我的人),忙?,于是乎没人回消息.....没办法找小伙伴闲扯吧,于是乎找到了狗子,狗子直接甩给我一个excel,然后说:爸爸,帮我看看怎么快速确定每个单元格内容重复多少次。爸爸都叫了我能不帮吗?于是乎我遍搜excel找函数,最后终于找到了,结果不太理想,不太会玩excel,介于爸爸的身份,那就帮到底吧,就用py写个了个脚本处理,直接输出不同单元格元素出现的次数,写好发他了,他告诉我不想装py环境....这就是让嚼碎了喂嘴里呀,我整个又不爽了,写好了你不用那不是让我做无用功嘛,不行,你必须得用,于是乎我就想到了你不想搞环境那我就直接给你搞个可执行文件(windows上就是exe)不就行了,说干就干,马上把百度打开.......你问我打开百度干嘛?你可以去找度娘问问我为啥这样做

​ 2、过程(扯的蛋疼)

​ 1、经过一通cn.bing.com,终于了解到原来如此简单,使用Pyinstaller就能实现

​ 2、说干就干反正有网直接在线安装Pyinstaller

pip install pyinstaller
你如果没有切换国内源可能会比较慢的痛苦
使用清华源下载安装:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyinstaller

​ 3、了解一下Pyinstaller指令

指令 描述
-h, --help 显示此帮助消息并退出
-v, --version 显示程序版本信息并退出。
--distpath 放置捆绑应用的位置,即打包成的文件放置的目录(默认值:./dist)
--workpath 所有临时工作文件.log、.pyz 放在哪里 等等(默认:./build)
--clean 清理 PyInstaller 缓存并删除临时文件,在构建之前
--log-level LEVEL 构建时控制台消息中的详细信息量。LEVEL可能是TRACE、DEBUG、INFO、WARN、ERROR、CRITICAL之一(默认值:INFO)。
-D, --onedir 创建包含可执行文件的单文件夹捆绑包 (默认)
-F,--onefile 创建一个单文件捆绑可执行文件。
--specpath 存储生成的规格文件的文件夹(默认: 当前目录)
-n NAME,--name 分配给捆绑应用程序和规范文件的名称 (默认值:第一个脚本的基本名称)
-p,--pathDir 搜索导入的路径(如使用 PYTHONPATH)。 允许多个路径,用 ':' 分隔,或者 多次使用此选项。相当于 在规范文件中提供 pathex 参数。
--copy-metadata 复制指定包的元数据。该选项可以多次使用次。
-w,--windowed, --noconsole 重点:这个选项如果没有,那么你就打不出来窗口程序包,Windows 和 Mac OS X:不提供标准 I/O 的控制台窗口。在 Mac OS 这也会触发构建 Mac OS .app 捆绑包。在 Windows 上这个 如果第一个脚本是“.pyw”文件,则会自动设置选项。
-i或FILE.exe,IDFILE.icns或图像或或FILE.exe,ID或FILE.icns或图片或“无”>--图标,“无”> 这里设置的是logo图标,可以是空,FILE.ico:将图标应用于 Windows 可执行文件。 FILE.exe,ID: 解压 带有来自 exe 的 ID 的图标。 FILE.icns:将图标应用到 .app 包上 苹果系统。如果输入的图像文件不是平台格式(ico 在 Windows 上,在 Mac 上为 icns),PyInstaller 尝试使用 Pillow 来翻译 图标转换为正确的格式(如果安装了 Pillow)。使用“NONE”不 应用任何图标,从而使操作系统显示一些默认值(默认值:应用 PyInstaller 的图标)。该选项可以多次使用。

​ 指令还有很多,我就不一一列举了,反正我也只是从中挑了几个关键性的看了一下便于接下来使用

​ 4、准备了一个logo,加上我的py文件也就两个

​ app.py、a.ico

​ 5、开始编译

pyinstaller -F -w -i app.ico app.py

​ 接下来开始疼了,


​ 包打出来了,但是点击一闪而过,卧*,啥原因,想来想去好像我写的本来就是个控制台输出,没有什么可视化界面哦,我擦嘞,还得看看怎么搞个简单的可视化界面出来,于是我就又去简单看了一下py的GUI,用tkinter搞了个简单的页面,页面张啥样?自己看去吧https://github.com/SunArmy/handle_excel/

​ 真爽,然后重新开始编译,出来了一个app包(因为我是Mac电脑),问题来了,我想要exe呀,这小伙用的是win,幸好我电脑有个win的虚机,直接打开,文件放进去开始编译,安装py环境,抱着用新不用旧的观念(害死人),直接安装了py3.12,一路顺丰,开始编译

​ 结果凉凉了,编译失败,打不出来,仔细看了报错信息,跟我说是找不到Windows-64bit-arm,根据路径去看了一下确实没有,只有一个Windows-64bit-intel文件夹,郁闷了,这不应该呀,我电脑确实是M1的处理器,底层ARM架构,但是理论上来讲不应该能拉下来intel的依赖偏偏缺少arm的,

​ 这个过程花费了我大概两个小时,脑细胞死N个亿,头发掉N根,中间自己重新下载过pyinstaller离线包,自己去编译,确实出来了而且能用,但是我还是纠结于为啥直接用就不行呢?

​ 思来想去跟我Mac上唯一的不同可能就是py版本不同,Mac上的版本是3.8的,所以我就果断卸载了3.12重新安装了3.8,一路丝滑,打出来了

​ 3、结果(不疼了,好爽)

​ 至此,在经历了各种苦难之后成功打出了exe文件,给好大儿发过去。

​ 我在网上看到这么一个实用之处分享给你们作为学习动力,假如有个小姐姐需要一个自动化脚本工具,可她电脑又没有py环境,这个时候打个exe发给她是不是就很贴心,什么?你说不如给她装py环境更能体现你的技术,那你也挺聪明的,指不定文件出问题或者不小心编辑到了各种问题都要频繁找你,你真是个心机boy哦

使用python 打包成exe文件的更多相关文章

  1. py库:把python打包成exe文件(pyinstaller)

    http://blog.csdn.net/be_quiet_endeavor/article/details/73929077 用Pyinstaller把Python3.4程序打包成可执行文件exe ...

  2. Python打包成exe文件很难?一分钟即可学会,并添加图标!

    环境1.python 3.72.pyinstaller下载方式:2.1 python安装(略)2.2 安装pyinstaller打开DOS窗口输入以下命令:pip install pyinstalle ...

  3. 使用pyinstaller将python打包成exe文件

    步骤: 1)win+R 输入cmd打开dos窗口   2)先安装pyinstaller: pip install pyinstaller 3)然后使用cd命令进入项目文件的路径下:   4)再使用命令 ...

  4. python打包成exe文件

    在cmd命令提示符窗口中输入pip install pyinstaller(在python3的环境下,假如不能安装的话,用pip3 install pyinstaller指令) 使用指令pyinsta ...

  5. Python Windows下打包成exe文件

    Python Windows 下打包成exe文件,使用PyInstaller 软件环境: 1.OS:Win10 64 位 2.Python 3.7 3.安装PyInstaller 先检查是否已安装Py ...

  6. 如何将 Python 程序打包成 .exe 文件?

    有不少订阅本公众号的朋友都不是玩 Python,甚至都不是计算机相关专业的,当我给他们一个 Python 程序时,他们是完全不知道该怎么运行的. 于是我想是不是可以将我的程序打包成可执行文件,直接运行 ...

  7. 把Python项目打包成exe文件

    我们很多时候,写好的程序需要打包成.exe文件才可以发给客户,那么今天我就来谈一谈,如何将一个写好的Python程序打包成exe文件! 首先,我们我们使用到的工具是python 3.7 和 Pyins ...

  8. python + pyinstaller 实现将python程序打包成exe文件直接运行

    pyinstaller 我们在平常学习使用python的时候经常会自己编写一些小程序来使用,虽然python是跨平台的语言,但是如果我们想要在一个没有python以及很多库环境的电脑上使用我们的小程序 ...

  9. 将 Python 程序打包成 .exe 文件

    1.简介 做了一个excel的风控模板,里面含有宏,我用python的第三方xlwings部署到linux后发现,linux环境并不支持xlwings. Python 程序都是脚本的方式,一般是在解析 ...

  10. python画猫并打包成EXE文件

    因python自带有海龟画图库,尝试给爱猫的小仙女来画个猫咪. 1.代码如下 from turtle import * #两个函数用于画心 def curvemove(): for i in rang ...

随机推荐

  1. centos7进入单用户模式(忘记密码操作-真正解决方案)

    centos7密码忘记了,如何登录进去呢. 1.重新启动 2.按e进入以下界面:linux系统引导  3.在标记的如下位置行尾增加:rw init=/bin/sh  4.按Ctrl+x执行可进入单用户 ...

  2. 搬运 |(有刀🔪慎入)kwdnx、谷雨、更漏与我

    本打算把文案投到官微,但官微说文案太长了,只能放删减版: 那就把文案放博客上吧 写于 癸卯年 戊午月 己亥日. 四年前的冬天我们初见,大家都是青涩的未成年人:在少年班团建的喧闹中,谷雨谈论高数竞赛,k ...

  3. 比Nginx更好用的Gateway!

    比Nginx更好用的Gateway! Token新开源Gateway,使用yarp实现的一个反向代理,支持界面操作动态添加集群添加路由绑定,并且支持动态添加域名绑定https证书,超强yarp+Fre ...

  4. 在Windows 版的Chrome中切换标签页

    按住Ctrl+tab键之后使用page up/ page down键左右移动!

  5. [IDEA] - 左侧目录结构没了,怎么处理

    把项目目录下的.idea删除,再重启IDEA打开项目就行了

  6. 【Kafka系列】(一)Kafka入门

    有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top 首发博客地址 系列文章地址 Kafka是什么? 一句话概括:Apache K ...

  7. [转帖]Linux fsync和fdatasync系统调用实现分析(Ext4文件系统)

      转自:https://blog.csdn.net/luckyapple1028/article/details/61413724 在Linux系统中,对文件系统上文件的读写一般是通过页缓存(pag ...

  8. nexus的简单安装与使用

    nexus的简单安装与使用 文件下载 官网上面下载文件比较麻烦, 得科学一些 https://www.sonatype.com/download-oss-sonatype 选择oss 开源版进行下载 ...

  9. [转帖]TIDB-Error 1105: Out Of Memory Quota问题解决

    一.背景 复杂sql查询报错 二.原因 单条s q l使用内存默认为1G 三.解决 tiup cluster edit_config tidb-test server_configs: tidb: m ...

  10. [转帖]《Linux性能优化实战》笔记(20)—— 使用 tcpdump 和 Wireshark 分析网络流量

    tcpdump 和 Wireshark 是最常用的网络抓包和分析工具,更是分析网络性能必不可少的利器. tcpdump 仅支持命令行格式使用,常用在服务器中抓取和分析网络包.Wireshark 除了可 ...