Why pip3 install in python2 sitepackages
It seems that pip3
refers to Python-2.7's pip module or any other version of Python-3 that you have installed on your machine. However, you can install packages directly using the intended Python version. You'd need to just use -m
option.
python3.6 -m pip install numpy
Another option is to changing the source path that pip3
refers to. You can do this by finding the path of Python-3.6's pip and just bind it to pip3
alias.
This works for me:
python3 -m pip install -U --force-reinstall pip
Find the absolute path of the python3
interpreter with a command like this:
$ which python3
/Library/Frameworks/Python.framework/Versions/3.6/bin/python
Your path may be something different, of course. Copy that line to your clipboard.
Edit the pip3
script, which was installed using incorrect interpreter. Something like this:
vi $(which pip3)
You might need to use sudo
here, but try it first without. The first line will be something like:
#!/Library/Frameworks/Python.framework/Versions/2.7/bin/python
Change it to the path found in the previous step, e.g.
#!/Library/Frameworks/Python.framework/Versions/3.6/bin/python
Save the pip3
file and exit. This should be sufficient to associate pip3
with the correct environment. Check and verify the result with pip3 --version
. Now pip3 install numpy
should work as expected.