bbw
bbw

Reputation: 101

why i still can't use the NumPy module even the terminal says "requirement already satisfied"?

i was using

pip install numpy

to install NumPy on my Mac. Then the terminal says that

Requirement already satisfied: numpy in 
/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python

I guess it means Numpy is already installed? but when i wrote

from numpy import array
a=array([1,3],int)

the python shell says

Traceback (most recent call last):
File "/Users/bamford/Documents/python/untitled-3.py", line 1, in <module>
from numpy import array
builtins.ModuleNotFoundError: No module named 'numpy'

what is going on?

Upvotes: 0

Views: 2387

Answers (2)

Bijoy
Bijoy

Reputation: 1131

The message pip shows in your system

Requirement already satisfied: numpy in /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python

Here as you can note, numpy module is installed in python 2.7's directory. You should install it in python 3.*'s directory. You can try that by

pip3 install numpy

pip3 installs python libraries in python 3.*directory

add sudo at the beginning of command to install it system wide.

Upvotes: 0

unutbu
unutbu

Reputation: 880379

Per the comments, notice that your sys.path includes directories whose names imply they are associated with Python3.6:

[... '/Library/Frameworks/Python.framework/Versions/3.6/lib/pytho‌​n36.zip', ...]

Yet NumPy has been installed in your Python2.7 distribution:

Requirement already satisfied: numpy in /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python

(my emphasis) So your Wing101 IDE is using Python3, and not finding NumPy because NumPy has not (yet) been installed in your Python3 distribution.

One solution would be to install NumPy for your Python3 distribution. (Another, might be to configure Wing101 to run Python2.7.) Often, the pip executable associated with Python3 is named pip3 (to distinguish it from a Python2 version called pip.) So you might try

pip3 install numpy

to install NumPy.


Moral of the story: Every pip is associated with a particular Python distribution. pip is a Python script. When run, it calls the Python executable associated with that distribution.

To install modules for a particular Python using pip, you need to call the pip script which is associated with the desired Python executable.

Upvotes: 1

Related Questions