Pregunta

Actualmente tengo varias versiones de Python instaladas en mi Mac, la que viene con él, una versión que descargué recientemente de python.org, una versión anterior utilizada para ejecutar Zope localmente y otra versión que está utilizando Appengine. Es un desastre. ¿Alguna recomendación de usar una versión de python para gobernarlos a todos? ¿Cómo haría para eliminar versiones anteriores y vincular todas mis aplicaciones a una sola instalación? ¿Algún problema específico de Mac que debería saber? ¿Es esta una idea tonta?

¿Fue útil?

Solución

No hay nada inherentemente malo en tener varias versiones de Python. A veces es una necesidad cuando se usan aplicaciones con dependencias de versión. Probablemente el mayor problema es tratar con las dependencias del paquete del sitio que pueden variar de una aplicación a otra. Herramientas como virtualenv pueden ayudar allí. Una cosa que debe no es intentar eliminar Python suministrado por Apple en / System / Library / Frameworks y vinculado desde / usr / bin / python. (Tenga en cuenta la discusión reciente de varias versiones aquí .)

Otros consejos

Ian Bicking's virtualenv me permite tener Pythons aislados para cada aplicación que construyo, y me permite decida si desea incluir o no los paquetes globales del sitio en el entorno aislado de Python.

No lo he probado con Zope, pero supongo que lo siguiente debería funcionar bien:

  1. Usando su Python de Zope, cree un nuevo virtualenv, con o sin --no-site-packages
  2. Suelta tu Zope en virtualenv
  3. Activa el entorno con $ VENV / bin / enable
  4. Instale los paquetes de sitio necesarios
  5. Ejecute su Zope usando Python ahora en $ VENV / bin / python

Esto ha funcionado brillantemente para administrar proyectos de Django con varias versiones de Python, Django y complementos.

Este artículo parece entrar en más detalles sobre los detalles de Grok y Virtualenv, pero las generalidades también deberían aplicarse a Zope.

+1 para virtualenv.

Incluso si no necesita diferentes versiones de Python, es bueno mantener sus dependencias de desarrollo separadas de su sistema Python.

No estoy seguro de qué sistema operativo está utilizando, pero encuentro estas instrucciones muy útiles para que los entornos de desarrollo de Python se ejecuten en OSX.

El enfoque que prefiero, que debería funcionar en todos los sistemas operativos tipo UNIX:

Cree para cada aplicación que necesite una versión específica de Python una cuenta de usuario. Instalar en cada usuario cuenta la versión de python correspondiente con un prefijo local del usuario (como ~ / build / python) y agrega ~ / build / bin / a la variable de entorno PATH del usuario. Instale / use sus aplicaciones de Python en su usuario correcto.

La ventaja de este enfoque es el aislamiento perfecto entre las instalaciones individuales de Python y la selección relativamente conveniente del entorno de Python correcto (solo su para el usuario apropiado). Además, el sistema operativo permanece intacto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top