Directorio de artículos
Resuelva el problema de pip3 correspondiente a python2 en mac (problema de apuntamiento de pip)
Lo mismo puede resolver el problema de pip correspondiente a Python3.
Uno, el problema
Verifique las versiones de pip y pip3 en mac, la versión de Python correspondiente a pip3 es 2.7
En circunstancias normales, debería ser: pip corresponde a Python2 y pip3 corresponde a Python3.
Dos, resolver
Use which para ver la ruta absoluta del comando pip.
~ » which pip
/usr/local/bin/pip
El uso de easy_install para instalar pip en mac hará que tanto pip como pip3 se conviertan en pip
~ » sudo easy_install pip littlechieh6@bogon
Password:
Searching for pip
Best match: pip 20.2b1
Processing pip-20.2b1-py2.7.egg
pip 20.2b1 is already the active version in easy-install.pth
Installing pip script to /usr/local/bin
Installing pip3.8 script to /usr/local/bin
Installing pip3 script to /usr/local/bin
Using /Library/Python/2.7/site-packages/pip-20.2b1-py2.7.egg
Processing dependencies for pip
Finished processing dependencies for pip
-------------------------------------------------------------
~ » pip3 --version littlechieh6@bogon
pip 20.2b1 from /Library/Python/2.7/site-packages/pip-20.2b1-py2.7.egg/pip (python 2.7)
-------------------------------------------------------------
~ » pip --version littlechieh6@bogon
pip 20.2b1 from /Library/Python/2.7/site-packages/pip-20.2b1-py2.7.egg/pip (python 2.7)
O use el script get-pip.py en el sitio web bootstrap.pypa.io para instalar pip3, lo que hará que tanto pip como pip3 se conviertan en pip3
~/Desktop » curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--: 1 1842k 1 20565 0 0 43294 0 0:00:43 --:--: 50 1842k 50 935k 0 0 626k 0 0:00:02 0:00:100 1842k 100 1842k 0 0 848k 0 0:00:02 0:00:02 --:--:-- 848k
-------------------------------------------------------------
~/Desktop » sudo python3 get-pip.py
-------------------------------------------------------------
~/Desktop » pip --version littlechieh6@bogon
pip 20.3.3 from /Library/Python/3.8/site-packages/pip (python 3.8)
-------------------------------------------------------------
~/Desktop » pip3 --version littlechieh6@bogon
pip 20.3.3 from /Library/Python/3.8/site-packages/pip (python 3.8)
Ver la ubicación de ejecución de Python2 y Python3
~ » which python3 littlechieh6@bogon
/usr/bin/python3
-------------------------------------------------------------
~ » which python littlechieh6@bogon
/usr/bin/python
-------------------------------------------------------------
~ » ls -al /usr/bin/python3 littlechieh6@bogon
-rwxr-xr-x 1 root wheel 31488 Sep 22 08:29 /usr/bin/python3
-------------------------------------------------------------
~ » ls -al /usr/bin/python littlechieh6@bogon
lrwxr-xr-x 1 root wheel 75 Jul 1 08:44 /usr/bin/python -> ../../System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7
Ver la ubicación de ejecución de pip
~ » which pip littlechieh6@bogon
/usr/local/bin/pip
-------------------------------------------------------------
~ » which pip3 littlechieh6@bogon
/usr/local/bin/pip3
-------------------------------------------------------------
~ » ls -al /usr/local/bin/pip littlechieh6@bogon
-rwxr-xr-x 1 root admin 263 Dec 21 22:56 /usr/local/bin/pip
-------------------------------------------------------------
~ » ls -al /usr/local/bin/pip3 littlechieh6@bogon
-rwxr-xr-x 1 root admin 263 Dec 21 22:56 /usr/local/bin/pip3
El punto clave de los scripts pip y pip3 originales es #!
representar la ruta para ejecutar el script. Dado que tanto pip como pip3 son ejecutados por python3, use pip -V
ypip3 -V
#!/Applications/Xcode.app/Contents/Developer/usr/bin/python3
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal.cli.main import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
sys.exit(main())
Úselo vim /usr/local/bin/pip
para apuntar al intérprete a Python2
#!/System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal.cli.main import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
sys.exit(main())
Tres, el efecto
~ » pip -V littlechieh6@bogon
pip 20.2b1 from /Library/Python/2.7/site-packages/pip-20.2b1-py2.7.egg/pip (python 2.7)
-------------------------------------------------------------
~ » pip3 -V littlechieh6@bogon
pip 20.3.3 from /Library/Python/3.8/site-packages/pip (python 3.8)
Tutorial de referencia:
- https://blog.csdn.net/u014259820/article/details/100580970