Vengo de un entorno Ubuntu, y ya que puedes configurar Python 3 para que sea la primera clase de Python en Ubuntu (es decir, llamas a python
y obtienes Python 3), quería hacer lo mismo en el Mac que he empezado a usar.
Después de intentar señalar el /usr/bin/python
enlace simbólico a /usr/bin/python3
y al ver que fallaba, investigué un poco y encontré que Apple pone algo de protección en /usr/bin
que tiene que ser actualizado cambiando una bandera en el modo de recuperación, y no se recomienda generalmente . Así que pensé en crear un nuevo /usr/bin/local/python
enlace a /usr/bin/python3
y eso funcionaría ya que /usr/bin/local/python
viene antes que /usr/bin/python
en el camino.
Esto es lo que he probado. Los resultados me tienen confundido.
username@Machine ~ % python --version
Python 2.7.18
username@Machine ~ % sudo rm /usr/local/bin/python
username@Machine ~ % sudo ln -s /usr/bin/python3 /usr/local/bin/python
username@Machine ~ % which python
/usr/local/bin/python
username@Machine ~ % python --version
Python 2.7.18
username@Machine ~ % echo $PATH
/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
username@Machine ~ % /usr/bin/python3 --version
Python 3.8.9
username@Machine ~ % ls -l /usr/local/bin/python
lrwxr-xr-x 1 root wheel 16 Dec 9 12:37 /usr/local/bin/python -> /usr/bin/python3
username@Machine ~ % hash -r
username@Machine ~ % python --version
Python 2.7.18
username@Machine ~ % whence python
/usr/local/bin/python
Debo añadir que estoy ejecutando zsh, y estoy acostumbrado a ejecutar bash. ¿Por qué no me aparece la versión 3.8.9 cuando ejecuto python --version
o /usr/local/bin/python --version
?