我如何才能使蟒蛇环境文件可以在其他计算机上使用?

我使用conda env export > environment. YML将我的anaconda python环境导出到YML。导出的环境。Yml包含这个行前缀:/home/superdev/miniconda3/envs/juicyenv,它映射到我的anaconda的位置,这在其他pc上是不同的。


当前回答

到目前为止,我的情况(从x86到arch64)的最佳解决方案: https://github.com/conda/conda/issues/4339#issuecomment-311804578

Conda env export | cut -f 1 -d '=' | grep -v "prefix" > environment.yml

此外,如果您在机器架构(x86_64 > arch64)之间移动 您需要手动调整一些不兼容的包。例如Intel专用的mkl*,ld_impl_linux-64…

其他回答

Windows用户

打开CMD 激活SpidersEnv conda env export > spidersen .yml 然后浏览用户文件夹并搜索SpidersEnv.yml

这也是备份(导出)环境的另一种方法

首先激活你的conda环境(你想要导出/备份的环境)

conda activate myEnv

导出所有包到一个文件(myEnvBkp.txt)

conda list --explicit > myEnvBkp.txt

恢复/导入环境:

conda create --name myEnvRestored --file myEnvBkp.txt

Linux或Mac

Conda env export—no-builds | grep -v "prefix" > environment.yml

窗户

Conda env export -no-builds | findstr -v "prefix" > environment.yml


原理:默认情况下,conda env导出包含构建信息:

$ conda env export
...
dependencies:
  - backcall=0.1.0=py37_0
  - blas=1.0=mkl
  - boto=2.49.0=py_0
...

相反,你可以不带构建信息就导出你的环境:

$ conda env export --no-builds
...
dependencies:
  - backcall=0.1.0
  - blas=1.0
  - boto=2.49.0
...

它将环境与Python版本和操作系统解绑定。

首先激活Conda环境(下面,myenv是环境的假定名称)。

conda activate myenv

那么您只需要运行这个命令

conda env export > environment.yml

注意,您可以替换environment。Yml与您选择的任何其他文件名。

对我来说,Conda给出的程序是有效的:

https://conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html#sharing-an-environment

但前提是在anaconda提示/控制台中执行。

VSCode终端只生成了一个带有我的环境路径的yml文件,但没有显式的依赖包列表。