什么是.exe可执行程序

相信对python有过学习的朋友都知道可以用IDLE编写并跑一跑python,但是如何做到别人电脑没有装python的情况下运行python的脚本呢?(看标题

这里简单提一下.exe 可执行程序

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAV2Nvd2lu,size_20,color_FFFFFF,t_70,g_se,x_16

 

.exe是文件扩展名,带有.exe扩展名的文件名按下Enter 键就可运行。这么个意思不就是:不需要有python环境即可运行python程序


 进入正题

目前比较常见的打包exe方法都是通过Pyinstaller来实现的,本文便介绍这种方法。

1.安装Pyinstaller

第一种方法(可能有各种扯皮错误)

首先我们要先安装Pyinstaller,直接在cmd使用pip命令

  1. windows + R 打开命令窗口
  2. 输入 cmd ,打开命令提示行
  3. 输入以下指令安装 pyinstaller :
pip install pyinstaller

第二种方法(推荐)

先打开cmd(先放那)


再找到Python的快捷方式(所有应用里就有)右键-打开文件所在的位置

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAV2Nvd2lu,size_20,color_FFFFFF,t_70,g_se,x_16

找到并打开Scripts这个文件夹 

 watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAV2Nvd2lu,size_20,color_FFFFFF,t_70,g_se,x_16

找到pip,拖到cmd中 

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAV2Nvd2lu,size_20,color_FFFFFF,t_70,g_se,x_16

 首先,注意先打一个空格,随后输入下方代码后回车

install pyinstaller

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAV2Nvd2lu,size_20,color_FFFFFF,t_70,g_se,x_16

 出现下面的情况则安装成功

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAV2Nvd2lu,size_20,color_FFFFFF,t_70,g_se,x_16

 2.使用pyinstaller进行打包

(1)小白笨方法

刚才Scripts目录下多了几个应用程序,我们找到pyinstaller即可,先不要打开它,保持这个窗口不要关。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAV2Nvd2lu,size_20,color_FFFFFF,t_70,g_se,x_16

 找到你.py文件所在位置。这里我的文件在桌面(其他位置以此类推),按住shift,空白处右键-在终端中打开

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAV2Nvd2lu,size_20,color_FFFFFF,t_70,g_se,x_16

 注意,这里把我们之前得到的pyinstallert拖入到终端里,如下图watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAV2Nvd2lu,size_20,color_FFFFFF,t_70,g_se,x_16

 这里我们先在上图.exe后键入一个空格,输入 "文件名+.py  回车"(不加" ")

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAV2Nvd2lu,size_20,color_FFFFFF,t_70,g_se,x_16

 出现上述情况即为成功,注意左上角的dist文件夹,打开

此时会出现dist,build,.spec三个文件,我们只需要dist就行,打开如下图

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAV2Nvd2lu,size_20,color_FFFFFF,t_70,g_se,x_16

 找到默认打包图案的应用程序(.exe)即为我们打包好的.exe可执行程序(双击即可运行

恭喜你拿下全部打包技巧!

 

(2)大佬快速开始打包

其实可以使用下方终端命令直接打包:(.py文件的目录下)

Pyinstaller -F xx.py 打包exe
 
Pyinstaller -F -w xx.py 不带控制台的打包
 
Pyinstaller -F -w -i xx.ico xx.py 打包指定exe图标打包

以上就是全部过程,实际操作起来也不是很困难,但是需要注意一些细节的处理(比如说路径问题,空格键,终端命令行……)。

这是目前作者所找到的最简路径实现.py打包,希望对大家能有所帮助。


进阶一下

最后处理几个问题,.exe默认打包图标……似乎不太好看,生成的文件也不少(也看不懂),该如何解决?

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAV2Nvd2lu,size_20,color_FFFFFF,t_70,g_se,x_16

看着咋这么复杂( ̀⌄ ́)

78f233f56f124e378d8a01b9c7156024.png

默认的图标

 

 这里提前说明一下,以下步骤是在上面“ 这里我们先键入一个空格,输入文件名+.py  ”后操作的

最常用下面几个写下自取

文件名.py -F   //打包exe
文件名.py -F -w   //不带控制台的打包
文件名.py -F -w -i 图片名.ico //.exe有图标的打包

 

演示一下 

这是我想要的exe程序的图标(嗯,我可爱的头像),图片名字是 e (随便取个好记)

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAV2Nvd2lu,size_20,color_FFFFFF,t_70,g_se,x_16

成功后打开dist文件(很熟练)

此时,一个打包好的.exe待你双击,图标好看,无杂乱文件,很完美 。

 watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAV2Nvd2lu,size_20,color_FFFFFF,t_70,g_se,x_16

136d77c90c6444e7b171fb5e299ea8d7.png

自定义图标

 

作者能力有限,不免疏漏,如有不足,还请谅解指正。

感谢你们

 

近期修复了一些语句表达的疏漏和代码的小小bugs~

2023.11.18回首看此文,修改了当初使用的低级语法,到底还是`Pyinstaller -F xx.py 打包exe`这一句足矣

看到一年来很多人收藏,不免感慨万千,谢谢读者们

技术自由,开源万岁~

再补充一下:Mac下打包的语法相同,会产生Unix可执行文件和打包好的exe程序

f282a87027584eafa1dd7387d0d91644.png

 

联系我

 

6a10a10f309148ceafba5bf345924d55.png

 

是的,联系我我也不回复(假的)

欢迎技术交流~

参考资料

[1]别再问我Python打包成exe了!(终极版)别再问我Python打包成exe了!(终极版)_朱小五是凹凸君呀的博客-CSDN博客_python 打包成exe

[2]什么是exe - 搜狗百科

[3]学习笔记 | PyInstaller 使用教程——用pyinstaller打包exe应用程序【建议收藏!】

用pyinstaller打包exe应用程序【建议收藏!】_你豪哥哥的博客-CSDN博客_pyinstaller教程

 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐