0 votos

¿Debo configurar PYTHONPATH para el python preinstalado en MacOS 13 M1/M2?

En el nuevo MacOS 13 M1/M2, python 3.9 viene preinstalado con pip3 (no pip). No instalo otras versiones de Python con brew/macport o el instalador de Python, solo la preinstalada 3.9.

Con el Python preinstalado, el sitio de paquetes global está ubicado en /Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/site-packages (otros instaladores estarán en /Library/Frameworks/Python.framework/Versions/3.9/)

El sitio de paquetes por usuario está ubicado en ~/Library/Python/3.9/lib/python/site-packages

Cuando instalo un paquete con pip3, se instalará en la ubicación por usuario, no en la global, junto con los archivos ejecutables instalados en ~/Library/Python/3.9/bin. Por ejemplo, después de actualizar pip3, pip también se instalará en ~/Library/Python/3.9/bin.

Quiero ejecutar estos archivos ejecutables instalados por pip3 sin especificar la ruta completa. Cuando actualicé pip3, el sistema aún se quejaba de que no podía encontrar pip, y me llevó algo de tiempo entender por qué.

Puedo agregar ~/Library/Python/3.9/bin directamente a PATH pero siento que es una solución improvisada. Por ejemplo, con la próxima versión de macOS, el Python preinstalado puede actualizarse a 3.10 (como ha sucedido antes) y también podría necesitar agregar ~/Library/Python/3.10/bin a PATH. He visto que a veces se modifica PATH para que sea largo y feo solo para incluir Python y los archivos ejecutables relacionados.

¿Debería configurar PYTHONPATH en ~/Library/Python/3.9/bin y añadir PYTHONPATH a PATH? Me gustaría saber cuál es la mejor práctica para usar PYTHONPATH/PYTHONHOME para el Python preinstalado en Mac.

Ninguno de los dos PYTHONPATH/PYTHONHOME están configurados por defecto.

De What exactly should be set in PYTHONPATH?, las respuestas acordadas son que no es necesario configurar PYTHONPATH a menos que se quieran usar bibliotecas no estándar. Pero estas respuestas no parecen resolver mi problema, por supuesto, necesito usar bibliotecas no estándar para mi desarrollo, como por ejemplo pytorch.

--- actualización ---

De los comentarios que recibí, me di cuenta de que instalé python3 con xcode-select --install, MacOS 13 no preinstala python3.

También, de los comentarios, permítanme reiterar mis preguntas, 1. ¿Debería configurar PYTHONPATH/PYTHONHOME, por qué o por qué no? 2. Siento que agregar ~/Library/Python/3.9/bin a PATH es una solución improvisada y me gustaría saber si hay una mejor manera.

Por supuesto, al final necesitaré agregar las rutas de ejecutables a PATH. Pero no sabía el uso correcto de PYTHONPATH, así que pensé que tal vez podría agregar las rutas de ejecutables a PYTHONPATH y luego agregar PYTHONPATH a PATH. De esa forma, cuando tenga más rutas que agregar, solo necesitaré editar PYTHONPATH y PATH se mantendrá igual.

Pero parece que eso no es el uso adecuado de PYTHONPATH según lo que tengo hasta ahora.

3voto

Marc Wilson Puntos 146

Deje PYTHONHOME y PYTHONPATH como están.

Agregue el directorio bin que contiene los ejecutables que desea ejecutar a su ruta.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X