17

正在读这个

http://conda.pydata.org/docs/using/envs.html

是否可以直接运行 conda python 而不必source activate xxx

在 VirtualEnv 中,您可以找到 python 可执行文件的确切位置并运行类似这样的内容

./path/to/my/venv/bin/python xxx.py

然后 xxx.py 将在环境开启的情况下执行。在 Crontab 中编写 one-linders 很方便。

我可以对 anaconda/miniconda 环境做同样的事情吗?

我一直在 Centos 6.5 上尝试这个,系统的 python 2.5 太旧了。

我用 miniconda 安装了 python 2.7,现在我 pip 安装了 uWSGI,直接执行时说

Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
ImportError: No module named site

但是当在 conda env 下执行它时,它会按预期工作。

4

2 回答 2

19

如果conda在您的路径上:

source activate <env name> && python xxx.py && source deactivate

如果conda不在您的路径上但已安装:

source /path/to/conda/bin/activate /path/to/desired/env_name/ && python xxx.py && source deactivate

于 2016-05-14T17:52:18.057 回答
1

实际上,您可以在 miniconda 中执行与 venv 完全相同的操作。如果 path_to_miniconda 是您的 miniconda 安装目录,则

/path_to_miniconda/envs/name_of_env/bin/python xxx.py

应该管用。

于 2016-05-14T18:06:17.333 回答