pyinstaller 打包的exe总是太大而且打包好的exe运行起来速度超级慢。 那是因为,你的默认环境里装了很多你不需要的包。 在你当前的环境下,pyinstaller会把你安装的所有库都统一打包进去,造成打包好的exe很大,运行期来很慢。 解决办法: 要用纯净的python来打包即可避免加入不必要的包,那么如何快速地建立纯净的python环境呢?
当然不用重装python,只需要通过pipenv建立虚拟环境即可。在虚拟环境下打包,最终的exe文件会非常小。
建立一个python的虚拟环境 python的虚拟环境类似于虚拟机,能够创建一个独立的python运行环境, 虚拟环境中的安装的第三方依赖包和全局环境中的包相互独立。 虚拟环境的优点:
- 不同的虚拟环境相互独立,不会影响到其他应用。
- 防止出现包管理混乱和版本冲突。
- 不会影响全局的python环境。
环境准备: - python 3.7.9 (python3.3以上自带venv模块)
- Windows 10
新建一个文件夹用于创建虚拟环境,这里在D盘根目录上新建了一个 PythonVirtualEnv文件夹 ![在这里插入图片描述](https://img-blog.csdnimg.cn/480cbfd973474ac194892af7da65dc4b.png) 打开cmd,切换路径到 PythonVirtualEnv 文件夹中,
![在这里插入图片描述](https://img-blog.csdnimg.cn/bc11a731060d4e2396634c276bf4d2df.png) 接着创建虚拟环境,命令如下: ![在这里插入图片描述](https://img-blog.csdnimg.cn/29b73f035de64c1bb32b56c6e4e83d7c.png) 现在可以查看文件夹Env中出现了一个名为test_env的文件夹,其中包含了python可执行文件,以及pip库的一份副本,这样就能安装其他包了。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/8754412b492142bdb994b85b1250ff1c.png) ![在这里插入图片描述](https://img-blog.csdnimg.cn/ef6ed27034464c43a4a433cd570fc67e.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6L-Z5Liq5Lq65LiN5piv55S75a62,size_18,color_FFFFFF,t_70,g_se,x_16)
目前已成功创建虚拟环境,接下来需要激活虚拟环境,命令如下: 进入到test_env\Scripts文件夹![在这里插入图片描述](https://img-blog.csdnimg.cn/34ac89da5e4842d68e60f4eddd72ec8d.png) ![在这里插入图片描述](https://img-blog.csdnimg.cn/e123dc2580a741a4b297e0cd0ff6b838.png) 输入activate ![在这里插入图片描述](https://img-blog.csdnimg.cn/587e27e1f6c74dce8c7c95085e20fa3d.png) 目前已进入python虚拟环境: ![在这里插入图片描述](https://img-blog.csdnimg.cn/5394a80ebae746e9a374c1c8353949a9.png) 输入pip list看一下,这是一个干净的环境。要退出该环境输入exit即可。 重新进入该环境,只需要进入D:\PythonVirtualEnv\test_env\Scripts执行activate命令即可。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/2fb80238ce68494999aa7e3c7acae682.png) 安装你的python脚本所必需的库。 我需要三个库,moviepy numpy wave 还有一个pyinstaller用于打包。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/1d02fab36c1e497f93f97a35c70b1738.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6L-Z5Liq5Lq65LiN5piv55S75a62,size_20,color_FFFFFF,t_70,g_se,x_16) ![一一安装即可。不再重复贴图。](https://img-blog.csdnimg.cn/d3339018d569487587724ca472f93093.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6L-Z5Liq5Lq65LiN5piv55S75a62,size_20,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/57fc120d33c24c65ad0524524ef695c8.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6L-Z5Liq5Lq65LiN5piv55S75a62,size_20,color_FFFFFF,t_70,g_se,x_16) 然后把你的py脚本放在该虚拟环境下,执行打包命令即可。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/e04db0eb5d184df3ac61798130e27001.png) ![在这里插入图片描述](https://img-blog.csdnimg.cn/4290dc8d230f442a95def0e4fe340e65.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6L-Z5Liq5Lq65LiN5piv55S75a62,size_20,color_FFFFFF,t_70,g_se,x_16)
这是打包后的结果: ![在这里插入图片描述](https://img-blog.csdnimg.cn/3ac5c5a3af6e4a7ca02ea66ba9f1ffe2.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6L-Z5Liq5Lq65LiN5piv55S75a62,size_20,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/889336ab64fb4e6786b950013ba50f4a.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6L-Z5Liq5Lq65LiN5piv55S75a62,size_19,color_FFFFFF,t_70,g_se,x_16)
生产的exe文件在dist文件夹中。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/7a19e5d1b3b9461f858ccc14af7a715e.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6L-Z5Liq5Lq65LiN5piv55S75a62,size_9,color_FFFFFF,t_70,g_se,x_16) ![在这里插入图片描述](https://img-blog.csdnimg.cn/6cef9f8bb25349aba1275ae3efcd36c4.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6L-Z5Liq5Lq65LiN5piv55S75a62,size_10,color_FFFFFF,t_70,g_se,x_16) 大小是47M,原来打包的要167M那么大。 运行一下,速度变得超级快,完毕
https://www.jb51.net/article/207220.htm https://blog.csdn.net/m0_54490473/article/details/122388254 https://blog.csdn.net/Yellowsbbanana/article/details/122781287 https://blog.csdn.net/Python_kele/article/details/118495091 https://blog.csdn.net/weixin_43939159/article/details/109308969
|