2017-01-23 100 views
1

我使用conda创建virtualenv,并在此env下安装新的python软件包,如下所示。conda安装不能在conda中创建的virtualenv中工作

conda create --name env_2 
source activate env_2 
conda install biopython 

ls ~/anaconda/envs/env_2/lib/python3.6/site-packages/Bio/ # biopython is installed correctly 

但我仍然不能使用生物。我错过了什么吗?

>>> import Bio 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
ImportError: No module named 'Bio' 
>>> 
+0

您是否在'source activate env_2'的相同终端选项卡中启动了'python/ipython'? –

+0

我真的没有足够的信息来告诉我究竟发生了什么。如果您在https://github.com/conda/conda的github问题中提供完整的终端会话输入/输出和'conda info',我可以提供帮助。 – kalefranz

回答

2

默认情况下,conda create --name env_2将只安装在环境activatedeactivateconda包,会有安装任何解释:

$ ls miniconda3/envs/env_2/bin/ 
activate conda  deactivate 

如果你想安装的Python解释器,你有3种选择:

  1. 提供python作为安装在环境中的包:

    $ conda create --name env_2 python 
    
  2. 创建ENV后安装Python作为包装:

    $ source activate env_2 
    (env_2)$ conda install python 
    
  3. 添加python到的默认包列表(documentation):

    $ cat ~/.condarc 
    create_default_packages: 
        - python 
    

编辑1 :

在评论中添加了信息。

+0

你的意思是我不能在virtualenv创建后安装软件包?它没有意义 – zjffdu

+0

那么,这是conda环境,而不是virtualenv之一。它的工作方式有点不同。激活环境后,您可以显式安装python'conda install python'。 –

+0

您也可以指定安装在新环境中的默认软件包列表(位于'〜/ .condarc'中 'create_default_packages'部分)。 Conda文档:[总是默认添加软件包](http://conda.pydata.org/docs/config.html#always-add-packages-by-default-create-default-packages) –