2017-10-04 224 views
0

在Mac上,尝试获取Python 3.6安装程序。Python无法找到与pip一起安装的软件包

Sams-MacBook-Pro:~ samgreenberg$ which pip3 
/Library/Frameworks/Python.framework/Versions/3.6/bin/pip3 
Sams-MacBook-Pro:~ samgreenberg$ which python3 
/Library/Frameworks/Python.framework/Versions/3.6/bin/python3 

然后

Sams-MacBook-Pro:~ samgreenberg$ pip3 list 
DEPRECATION: The default format will switch to columns in the future. 

You can use --format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning. 
biopython (1.70) 
certifi (2017.7.27.1) 
chardet (3.0.4) 
cycler (0.10.0) 
decorator (4.1.2) 
idna (2.6) 
ipython-genutils (0.2.0) 
jsonschema (2.6.0) 
jupyter-core (4.3.0) 
matplotlib (2.0.2) 
nbformat (4.4.0) 
numpy (1.13.1) 
olefile (0.44) 
Pillow (4.3.0) 
pip (9.0.1) 
plotly (2.0.15) 
pyparsing (2.2.0) 
python-dateutil (2.6.1) 
pytz (2017.2) 
requests (2.18.4) 
setuptools (28.8.0) 
six (1.10.0) 
traitlets (4.3.2) 
urllib3 (1.22) 

所以biopython似乎安装

Sams-MacBook-Pro:~ samgreenberg$ python3 -m pip install biopython 
Requirement already satisfied: biopython in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages 
Requirement already satisfied: numpy in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages (from biopython) 

肯定安装。

Sams-MacBook-Pro:~ samgreenberg$ python3 
Python 3.6.2 (v3.6.2:5fd33b5926, Jul 16 2017, 20:11:06) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import urllib3 
>>> import biopython 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
ModuleNotFoundError: No module named 'biopython' 
>>> 

urllib3工作,但不是新安装的软件包。使用pip卸载并重新安装没有效果,当我尝试使用随机的其他软件包时,结果相同。我究竟做错了什么?我对Python或OSX没有特别的经验。我的电脑预装了Python 2.7,但我很小心地在命令中使用Python3。

回答

2

当我们使用一些python模块时,我们通常会写>>> import module。例如,>>> import urllib3。但是,一些软件包,包括biopython,不在这个规则之内。您尝试键入>>> import Bio>>> print(Bio.__version__)。请在http://biopython.org/DIST/docs/tutorial/Tutorial.html查询更多详情。

--original answer--

请尝试键入以下脚本:

>>import sys 
>>print(sys.path) 

我觉得有没有/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages但只有python2的模块路径。

如果要解决这个问题暂时的,请使用以下命令:

>>sys.path.append("/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages") 

~/.bash_profile定义PYTHONPATH并重新启动你的终端,如果你总是使用python3:

PYTHONPATH=/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages:$PYTHONPATH 

+0

>>> import sys >>> print(sys.path) ['','/Library/Frameworks/Python.framework/Versions/3.6/lib/ python36.zip', '/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6', '/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib- dynload', '/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site- packages'] – Sam

+0

我误解了什么是biopython。当我们使用一些python模块时,我们通常会编写'>>> import module'。例如,>>> import urllib3'。但是,一些软件包,包括biopython,不在这个规则之内。您尝试输入>>> >>>导入Bio'和>>> print(Bio .__ version __)'。请查看[http://biopython.org/DIST/docs/tutorial/Tutorial.html](http://biopython.org/DIST/docs/tutorial/Tutorial.html)上的更多详细信息。 – montblanc18

+0

非常感谢,我应该阅读文档。我尝试使用Pillow作为测试,结果没有发现该软件包也以不同的名称导入。 – Sam

相关问题