No /etc/paths
es recomendable ni necesario modificar las rutas de acceso del sistema (in ).
Si ha instalado Python a través de Homebrew ( brew install python
y brew install python3
), debe leer las advertencias cuidadosamente:
brew info python
brew info python3
¿Por qué el manejo de Homebrew es python
tan especial?
Consulte la documentación de Homebrew y Python , ya que Homebrew crea bastantes enlaces simbólicos en diferentes lugares y utiliza la siguiente convención:
Homebrew proporciona una fórmula para Python 2.7.xy otra para Python 3.x. Los ejecutables están organizados de la siguiente manera para que Python 2 y Python 3 puedan instalarse sin conflictos:
python
apunta al sistema MacOS Python (sin PATH
modificación manual )
python2
apunta a Python 2.7.x de Homebrew (si está instalado)
python3
apunta a Python 3.x de Homebrew (si está instalado)
pip2
apunta a Python 2.7.x de Homebrew pip
(si está instalado)
pip3
apunta a Python 3.x de Homebrew pip
(si está instalado)
La razón de esto es que no desea python
usar el valor predeterminado de Homebrew Python si se instaló como una dependencia de alguna otra fórmula, lo que podría causar problemas en los scripts que simplemente se usan /usr/bin/env python
en su línea shebang.
También tenga en cuenta que este comportamiento de Homebrew / Python puede cambiar en algún momento en el futuro, debido a la naturaleza heredada de Python 2.
¡Pero quiero python
señalar a Homebrew's python
!
Entonces, si realmente desea hacer python
referencia a Python 2.7 de Homebrew en lugar de Python de su sistema, debe agregarlo a su $PATH
en ~/.bash_profile
:
export PATH=/usr/local/opt/python/libexec/bin:$PATH
... y deja tu /etc/paths
como estaban antes.
/etc/paths
ya que así es como se configuró antes de la reinstalación del sistema y todavía tengo un MacBook Pro (que también ejecuta High Sierra aunque con una actualización de Sierra en lugar de reinstalar) que lo tiene configurado con La/etc/paths
edición.python
adentro/usr/local/bin
? ¿Quéwhich -a python
muestra?python
de/usr/local/bin
solamente unapython2
,python2.7
. Presumiblemente, los sistemas antiguos se configuraron con una versión anterior de HomeBrew cuandopython
se creó una/usr/local/bin
. Curiosamente, aunque no hay unpython3
o tiene que instalarse por separado con HomeBrew? Pensé que llegaron bundle junto conbrew install python
brew install python3
para conseguirlo.