2011-11-14 6 views
1

J'essaie de comprendre la différence (avantages/inconvénients) à utiliser virtualenv par rapport à une installation python locale. J'ai un certain nombre de modules python qui ont été développés et qui ont un certain nombre de dépendances python (par exemple, numpy, scipy, nose, etc.). Un chemin pour déployer ceci est d'utiliser virtualenv puis de les installer dans virtualenv, le problème que je prévois avec ceci est que les utilisateurs peuvent avoir des pythons archaïques. L'autre option, bundle python 2.7, puis installe les applications dans la bibliothèque de site locale de ce python 2.7.Virtualenv contre une installation python locale

Si les versions de python étaient les mêmes, ces deux alternatives se retrouvent-elles avec la même solution?

grâce, jim

Répondre

2

Si vous regardez en termes de déploiement d'une application autonome pour les utilisateurs qui peuvent ou peuvent ne pas avoir le bon (ou tout autre) version de Python installée, bien sûr, il est plus sens de regrouper votre module et ses dépendances avec la version requise de Python.

Le point de virtualenv est que vous pouvez avoir une version en bac à sable de Python qui ne sera pas indésirable votre installation locale, peu importe ce que vous lui faites. Si vous voulez installer 12 dépendances pour expérimenter avec quelque chose et ensuite effacer tout ce que vous avez terminé, ce n'est pas un problème. Si vous avez quatre applications sur un serveur Web qui ont été développées en utilisant trois versions différentes de la même bibliothèque, vous n'avez pas besoin de croiser les doigts et de les forcer à utiliser la plus récente.

Questions connexes