0 前提
电脑上安装的anaconda环境
用thinker写了个GUI小程序,想打包成exe,使用pyinstaller打包时发现文件有500M左右,搜索发现很多人说是Anaconda环境依赖太大,新建个虚拟环境仅安装需要的库能解决此问题
网上的大部分方案是采用pipenv,但是conda能够很好的支持多环境管理的,所以采用conda创建虚拟环境
1 相关代码
创建虚拟环境:
使用 conda create -n your_env_name python=版本号(如3.7),anaconda 命令创建python版本为X.X、名字为your_env_name的虚拟环境。
your_env_name文件可以在Anaconda安装目录envs文件下找到。 指定python版本为2.7,注意至少需要指定python版本或者要安装的包, 在不指定python版本时,自动安装最新python版本。
conda create -n env_name python=3.7 # 同时安装必要的包 conda create -n env_name numpy matplotlib python=3.7
激活虚拟环境:
使用如下命令即可激活创建的虚拟环境
Linux: source activate your_env_name(虚拟环境名称)
Windows: activate your_env_name(虚拟环境名称)
此时使用python --version可以检查当前python版本是否为想要的(即虚拟环境的python版本)。
退出虚拟环境:
使用如下命令即可退出创建的虚拟环境
Linux: source deactivate your_env_name(虚拟环境名称)
Windows: deactivate env_name,也可以使用`activate root`切回root环境
删除虚拟环境:
删除环境:
使用命令conda remove -n your_env_name(虚拟环境名称) --all, 即可删除。
删除虚拟环境中的包:
使用命令conda remove --name $your_env_name $package_name(包名) 即可。
2 坑
尝试激活后查看环境发现没有激活,试了几次都不行(黑人问号?)
查了好久的资料偶然发现是我使用Windows PowerShell导致,激活环境操作必须使用CMD Shell
然后在虚拟环境里安装必要依赖(
最后使用pyinstaller打包文件,(要先pip install pyinstaller安装此库)
得到exe文件包大小为9.5M