Bienvenue sur IndexError.

Ici vous pouvez poser des questions sur Python et le Framework Django.

Mais aussi sur les technos front comme React, Angular, Typescript et Javascript en général.

Consultez la FAQ pour améliorer vos chances d'avoir des réponses à vos questions.

Pyvenv/Pyenv/VirtualEnv/Pew ... Quoi choisir ?

+2 votes

J'ai commencé python avec le classique virtualenv. Ca allait bien jusqu'à ce que je doive gérer python 2 et 3 en même temps. Du coup je suis passé sur pyenv/pyenv virtualenv. Ici (dans les commentaires) notre maitre à tous dit que c'est le mal.

Jusqu'à maintenant j'en avais rien à faire puisque ca marchait et j'étais pas dans un cas à risque (raf si mon projet perso pète à 3h du mat) mais la je dois partager un serveur avec une équipe etc donc j'aimerais bien faire les choses.

Ma seul envie c'est de gérer de façon simple les différents environnement virtuels quelque soit la version de python.

Du coup, qu'elle est LA façon de faire pythonique ?

demandé 9-Mar-2016 par Morkav (204 points)

Je ne sais pas s'il existe de "meilleur" façon de faire, ça dépendra de ton problème (comme toute techno d'ailleurs...).

Tu devrais étudier TOUS les soft d'env. virt. populaires en python (relax, ils se content sur les doigts de la main), et voir les avantages et les inconvénients de chacun.

A partir de là tu fais ton choix, d'ailleurs c'est comme ça qu'on procède en général, on voit ce qui existe, les A/I de chacun, et on tranche.

Cette façon de faire te permet de te défendre si X ou Y te dit que tu as fait le mauvais choix et qu'il te propose autre chose, tu pourras lui répondre et lui dire pourquoi tu as choisis A et pas B, plutôt que de lui répondre "A c'est le meilleur !".

J'ai pas trop le temps de répondre une réponse détaillée avec les A/I de chaque soft de de gestion d'env. virtuels python pour l'instant =/

PS : N'oublie de jeter un coup d'oeil à docker, c'est un outil qui a le vent en poupe ces temps-ci, et permet vraiment de cloisonner un soft avec toutes ses versions.

yep docker c'est pas mal mais la comme je le disais dans la question, c'est plus pour gérer seulement les versions de python. Merci pour les liens !

c'est plus pour gérer seulement les versions

Qu'est-ce qui empêche d'utiliser docker du coup? docker c'est loin d'être une machine à gaz ( != VM), tu peux faire tourner plusieurs milliers d'instances sur un pc "ordinaire".

Et du coup tu n'as aucune install. à faire, juste "docker run monProject", et ça roule out of the box, avec toutes les dépendances, toutes les versions testés.

Docker est tout de même un peu plus complexe a utiliser que un virtualenv non ?

2 Réponses

+3 votes

SI tu travailles dans un environnement windows et que tu as beaucoup de packages nécessitant de la compilation (numpy, scipy, ...), regarde à https://docs.continuum.io/anaconda/index ;-)

répondu 9-Mar-2016 par Zangror (198 points)

je suis sous linux mais yep je suis déjà tombé la dessus. Ca me semble un peu overkill par contre pour juste gérer différentes versions.

+4 votes

Avec pew tu fais déjà le tour de 90% des problèmes.

Si tu travailles dans un environnement windows et que tu as beaucoup de dependances compilées, anaconda est pas mal. Sinon pew marche partout et très bien.

répondu 9-Mar-2016 par Sam (4,974 points)
...