在用Python开发项目时,经常需要在特定的虚拟环境配置下才可以运行,这时就需要我们重新配置一个新的虚拟环境,新的虚拟环境得重新安装很多包,这就很麻烦了,那能不能在之前配置过的虚拟环境基础上安装其它新包呢,当然是可以的,最简单粗暴的方法就是复制之前已经配置好的虚拟环境后改个名字当作新的虚拟环境使用,复制虚拟环境也是讲究的,主要有三种方法,现总结见下:

方法一:
直接复制已有的虚拟环境(注意:需要操作系统一样)

cp old_env to $ANACONDA_HOME/envs/

怎么理解呢,见下:
在这里插入图片描述
为了检验是否复制成功,Win + R键输入cmd,进入dos命令提示符窗口中输入以下命令查看新的虚拟环境是否复制成功:

conda env list

如下:
在这里插入图片描述
在这里插入图片描述
只要如上图所示,说明复制后新的虚拟环境创建成功了。

方法二:
同样先键盘上Win + R,输入cmd,进入dos命令提示符窗口中,输入以下命令就可以直接克隆一个新的虚拟环境:

conda create -n new_env --clone old_env       #new_env表示新的虚拟环境的名字,old_env表示老虚拟环境的名字。

实操见下:
在这里插入图片描述
在这里插入图片描述
回车后等待,出现以下界面就说明新的虚拟环境克隆成功了
在这里插入图片描述
检测新的虚拟环境是否创建成功,同样输入以下命令查看:

conda env list

在这里插入图片描述
通过上面命令查看后,新虚拟环境的名字显示时,就说明新的循环境已经克隆成功了。

方法三:
这种方法有些繁琐,说白了就是将原有的老虚拟环境中安装过的所有包名字都打包保存到一个名字叫requirements.txt文件中,自己通过命令conda create 创建好一个虚拟环境后,再在这个新的虚拟环境中安装requirements.txt文件中的包。
实操见下:
在这里插入图片描述
进入dos命令窗口后输入以下命令去到老虚拟环境中:

conda activate old_env       #old_env指老虚拟环境名字

进入老虚拟环境后同下面命令将安装包等信息保存到requirement.txt文件中:

pip freeze > requirements.txt

在这里插入图片描述
下载包并保存到packages文件夹,即将requirements.txt文件保存到新建虚拟环境路径下。

  pip download -d ./packages -r requirements.txt --defaul-timeout=120

在这里插入图片描述
通过上面命令就可以创建一个与老虚拟环境一样的新环境了。

以上是三种复制老虚拟环境的方法,总有一种方法能帮到你,多多支持,感谢!

Logo

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

更多推荐