mantener Python 3 actualizado en una Mac

27

Quiero Python 3 (y no quiero meterme con Python proporcionado por OS X). De acuerdo a:

https://docs.python.org/3/using/mac.html

Puedo obtener Python 3 y vivir mucho tiempo y prosperar, PERO no está claro qué sucede cuando quiero actualizar usando el próximo DMG. Como ejemplo, puedo decirte lo que sucede con R en OS X: obtienes una GUI en / Application y otras cosas en / Library / Frameworks. En la actualización, la GUI se actualiza y el nuevo marco se coloca en el directorio / Library / Frameworks, junto con el anterior (hay un buen enlace simbólico 'actual' que asegura que se ignore el contenido anterior). Siempre elimino las cosas viejas para evitar la acumulación de suciedad, y eso es todo. ¿Funcionaría este enfoque para Phyton?

usuario1256923
fuente

Respuestas:

43

Yo personalmente uso Homebrew, que es un administrador de paquetes muy agradable. Si quieres probar esto, primero asegúrate de tener instaladas las herramientas de línea de comandos XCode en tu Mac. Luego instale Homebrew escribiendo

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

en la terminal Homebrew colocará su "Cellar" (el conjunto de todos los paquetes que instaló con Homebrew) en / usr / local / Cellar.

Ahora, sobre Python 3, una vez que se instala Homebrew simplemente escriba

brew install python3

y ahí vamos Tienes Python3 instalado en tu Mac.

Notas:

  • esta versión se llevará a cabo automáticamente en lugar de la versión de OS X (si no es así, simplemente ejecute brew link python3; esto vinculará python3 a / usr / local / bin /)
  • para actualizar Python ejecutar brew updateen la Terminal (esto actualizará Homebrew) y luego brew upgrade python3si el comando encuentra una nueva versión de python3brew update
  • al final puedes ejecutar brew cleanup python3para eliminar todas las versiones antiguas
  • con este elegante gestor de paquetes, también puedes ocuparte de R
AlessioX
fuente
1
Cita: "esta versión se llevará a cabo automáticamente en lugar de la versión de OS X (si no es así, simplemente ejecute" brew link python3 "; esto vinculará python3 a / usr / local / bin /)". Eso es exactamente lo que NO quiero. Yo uso Homebrew para otras cosas y no estoy seguro de que quiero ir por el camino Homebrew ...
user1256923
Tal vez no estaba tan claro. La versión de OS X seguirá estando disponible, pero el compilador predeterminado se configurará como Homebrew-one. Si eso es lo que todavía no quieres, entonces no lo entiendo. Al igual que el ejemplo R que proporcionó, también creará una GUI y también se actualizará el Framework adecuado. Disculpas
AlessioX
44
Lo último que puedo decir es que, considerando que HB vinculará cosas en "/ usr / local / bin" y que las cosas originales de Apple están en "/ usr / bin", puede establecer y editar la prioridad editando su entorno $ PATH: si pones "/ usr / local / bin" primero tendrás la versión HB, si pones "/ usr / bin" primero, tendrás la versión de Apple. Es bastante molesto, lo sé, pero esa es la única opción que se me ocurrió
AlessioX el
2
También puede usar brew unlink python3para eliminar el enlace simbólico. Ahora usará la versión osx cuando se ejecute python. Para usar la versión de preparación, aún puede ejecutar, por ejemplo, /usr/local/Cellar/python3/3.3.2/bin/python3o crear un enlace simbólico como ln -s /usr/local/Cellar/python3/3.3.2/bin/python3 /usr/local/bin/python-3.3.2y después de eso, ejecutar python-3.3.2. También puede instalar la versión anterior de las fórmulas python3 con HB, y usarlas todas por separado. Mira esto sobre cómo hacerlo.
madmax1
2
No necesita vincular python3, automáticamente estará disponible como /usr/local/bin/python3. Y dado que OS X no se envía con Python 3 de todos modos, no sobrescribe ningún Python preinstalado.
skrause
20

Utilice Homebrew :)

brew install python3

Hombrew instala todo /usr/local/Cellary crea enlaces simbólicos para aplicaciones en /usr/local/bin. Será no tocar nada en el sistema. Viene con el comando de limpieza de preparación, que elimina las aplicaciones no utilizadas u obsoletas automáticamente.

Para actualizarlo:

brew update
brew upgrade python3

Se vinculará automáticamente a la versión más reciente después de una actualización y brew cleaneliminará los restos de la versión anterior.

madmax1
fuente
2

Puedes usar la distribución Anaconda. Es una versión gratuita de Python 3 (y Python2). El paquete Andaconda también le permitirá actualizar diferentes versiones de Python y, después de la instalación, establece la ruta de Python adecuada. Anaconda viene con Anaconda Navigator que te ayuda a cargar paquetes de Python y también viene con Spyder 3. Un tipo de aplicación Python IDE.

jmh
fuente