OS X - Décider entre anaconda et homebrew Python environnements
J'utilise Python largement sur mon Mac OS X, pour les deux applications numériques et développement web (proportions à peu près égales). J'ai vérifié le nombre de Python installations, j'avais sur mon ordinateur portable récemment, et a été choqué de trouver quatre:
Came with Mac OS X:
/usr/bin/python
Python 2.7.6 (default, Sep 9 2014, 15:04:36)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
Installed via Homebrew
/usr/local/bin/python
Python 2.7.10 (default, Jul 13 2015, 12:05:58)
[GCC 4.2.1 Compatible Apple LLVM 6.1.0 (clang-602.0.53)] on darwin
Installed via Anaconda/Miniconda
~/anaconda/bin/python
Python 2.7.10 |Anaconda 2.3.0 (x86_64)| (default, Oct 19 2015, 18:31:17)
[GCC 4.2.1 (Apple Inc. build 5577)] on darwin
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://anaconda.org
Came with the downloaded .pkg from python.org
/System/Library/Frameworks/Python.framework/Versions/Current/bin/python
Python 2.7.6 (default, Sep 9 2014, 15:04:36)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
J'ai décidé d'unifier tout cela, et d'utiliser conda
. J'ai supprimé la version Homebrew et le Python.org télécharger (conservé le système principal d'une). Conda est idéal pour le calcul numérique, parce que je peux installer Jupyter/Numpy/Pandas dans la racine de l'environnement, et pas la peine d'installer virtualenvs pour chaque projet.
Mais maintenant, toute ma de développement web de flux de travail qui est foiré. Aucun de mes virtualenvs travail, puisque apparemment on n'est pas censé utiliser conda et virtualenv ensemble. J'ai essayé de créer conda environnements de la requirements.txt
fichier. Un paquet que j'utilisais avec django a été "markdown_deux", qui n'est pas disponible dans la Conda repo. J'ai regardé les moyens de le construire, mais la création d'une recette demande beaucoup d'effort (créer un fichier YAML, etc..)
Quelqu'un a trouvé un bon compromis pour cela? Je pense que je vais revenir à la version homebrew pour une utilisation générale, et l'écriture d'un alias pour changer la trajectoire de retour à la conda version que nécessaire. Mais il faudra aussi que le suivi celle que j'utilise maintenant..
- Acheter deux ordinateurs portables?
- Une autre solution serait de recourir à une "full-stack" développeur web et de données scientifique et de leur permettre de comprendre par eux-mêmes
- Puis-je vous demander comment avez-vous découvert il y en a quatre? Quelle est la commande que vous avez utilisé pour trouver ces distributions python?
- Vous pouvez essayer quelque chose comme cela dans Mac ou Linux:
locate python | grep "bin/python"
Vous devez vous connecter pour publier un commentaire.
Je utiliser Homebrew Python pour tous mes projets (de la science des données, un web-dev).
Conda est rien de compliqué, vous pouvez avoir les mêmes paquets à la main avec une combinaison de
pip
et Homebrew science. En fait, c'est encore mieux, car vous avez plus de contrôle sur ce que vous installez.Vous pouvez utiliser votre virtualenvs seulement quand tu fais du développement web. Pour les applications numériques, vous aurez probablement envie d'avoir les dernières versions de vos colis à tout moment.
Si vous souhaitez mettre à jour tous vos paquets à la fois avec le pip, vous pouvez utiliser cette commande:
De flux de travail que j'ai trouvé la meilleure:
Utilisation
conda
pour virtuel de gestion de l'environnement. Jamais utiliser /installer dans le système de python.Utilisation
pip
à installer dans le virtuel active de l'environnement, tout comme normale.Utilisation
conda
paquets seulement dur pour installer le logiciel, tels que Qt.Automatisation /extras
autoenv
oudirenv
et d'activer automatiquement les environnements virtuels lorsque vous entrez un répertoire en mettant la conda de commande à l'intérieur de la.env
ou.envsrc
fichier.