【问题标题】:Installing Biopython: ImportError: No module named Bio安装 Biopython:ImportError: No module named Bio
【发布时间】:2015-10-20 18:41:42
【问题描述】:

尝试在 Fedora 21、Python 2.7 上安装 Biopython。我已经完成了以下操作

[mike@localhost Downloads](17:32)$ sudo pip2.7 install biopython
You are using pip version 6.1.1, however version 7.1.0 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
Collecting biopython
/usr/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:79: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
  InsecurePlatformWarning
  Downloading biopython-1.65.tar.gz (12.6MB)
    100% |████████████████████████████████| 12.6MB 33kB/s 
Installing collected packages: biopython
  Running setup.py install for biopython
Successfully installed biopython-1.65

然后

[mike@localhost Downloads](17:32)$ ipython
Python 2.7.9 |Anaconda 2.2.0 (64-bit)| (default, Mar  9 2015, 16:20:48) 

In [1]: import Bio
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-a7440e1156be> in <module>()
----> 1 import Bio

ImportError: No module named Bio

我做错了什么?

编辑

我尝试使用

安装 biopython
sudo easy_install -f http://biopython.org/DIST/ biopython

并将其安装到 /usr/lib/python2.7/site-packages/biopython-1.65-py2.7-linux-x86_64.egg/ 中。没用。

然后我尝试使用相同的命令安装它,没有 sudo:

easy_install -f http://biopython.org/DIST/ biopython

将它安装到 /home/mike/anaconda/lib/python2.7/site-packages/biopython-1.65-py2.7-linux-x86_64.egg

那行得通! 对 ipython 和 python 都有效。但是为什么它起作用了……?

【问题讨论】:

  • 你使用的是 anaconda 而不是安装包的目的
  • 要为 Anaconda 解释器安装它,请改用 conda install ...
  • 普通 Python 也不行。

标签: python fedora biopython python-install


【解决方案1】:

在使用 pip 之类的东西时应该非常小心, pip 与假定的 Python 解释器一起使用。

我看到您正在尝试从 Python 解释器中导入 Bio,您可以通过键入 ipython 获得。您可以确保调用该解释器的 pip,如下所示:

sudo ipython -m pip install biopython

请注意,安装不是 ipython 独有的。它但是对于任何安装在 ipython 之上的 Python 安装都是专有的。

【讨论】:

    【解决方案2】:

    sudo pip 不是很好的做法,因为它可能会在 root 权限下安装东西,这通常不会授予普通程序。

    问题可能在于库路径。信息最丰富的工具将是

    import sys
    print (sys.path)
    

    which python
    pip --version
    

    并用pip install biopython --user代替sudo pip

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-09-29
      • 2019-05-10
      • 2021-03-13
      • 2020-03-17
      • 2014-10-11
      • 1970-01-01
      • 2017-05-30
      相关资源
      最近更新 更多