python - conda 安装在 conda 创建的 virtualenv 中不起作用

标签 python virtualenv anaconda conda

我使用 conda 创建一个 virtualenv,并在此环境下安装新的 python 包,如下所示。

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

但是我仍然无法使用Bio。我错过了什么吗?

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

最佳答案

默认情况下,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. 创建环境后将 python 作为包安装:

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

    $ cat ~/.condarc
    create_default_packages:
      - python
    

编辑 1:

添加了评论中的信息。

关于python - conda 安装在 conda 创建的 virtualenv 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41804039/

相关文章:

python - 对于服务器端 python 代码,是否有比 virtualenv 更好的解决方案?

anaconda - Spyder 5 ModuleNotFoundError

Python/Tkinter。将所有条目存储在列表中的按钮

ubuntu - 虚拟环境导入错误 : No module named urllib3

python - 在没有 virtualenv 的情况下启动 Celery

python - 在anaconda python中保存动画文件时出现"IOError: [Errno 32] Broken pipe"

python - 在 CONDA 环境中独占使用 PIP 有哪些陷阱?

python - 在不附加可迭代对象时可以使用列表理解吗

python - InterfaceError :(sqlte3. InterfaceError)绑定(bind)参数0时出错

python - 将单个 DataFrame 行分解为多个行