Sondage - Quel usage de python avez-vous ?

Quelques petites questions afin de mieux connaitre la communauté, ses usages de python, les outils, etc.
N’hésitez pas à rajouter en commentaire si les choix vous semblent trop vastes ou que vous ne trouvez pas votre réponse dans la liste :slightly_smiling_face:

Quel usage
    • Développement, sites web
    • Administration système, sécurité
    • Calcul scientifique, machine learning
    • Embarqué, domotique
    • Script de traitement dans une application (Gimp, QGis …)
    • Autre

0 votant

A des fins
  • Professionnelles
  • Personnelles
  • Enseignement
  • Etudes / Scolaire

0 votant

Framework
  • Django
  • Flask
  • Pyramid, autre framework…
  • Pas de framework

0 votant

Outils
  • Virtualenv
  • Bibliothèques externes (requests, beautifulsoup, …)
  • Outils de test: pytest, tox …
  • SciPy, pandas, matlib
  • Rien de tout ça

0 votant

Sur:
  • Windows
  • Linux, Mac, BSD…
  • Raspberry/boards
  • JupyterLab notebooks
  • Docker et autres container
  • Autre

0 votant

Vous pouvez parler plus en détails de votre configuration (IDE, libs, version de python) en commentaire. :speech_balloon:

Je précise que j’ai coché virtualenv mais que j’utilise en fait le module venv de la stdlib. Si quelqu’un pouvait m’expliquer pourquoi des gens utilisent encore virtualenv ça m’intéresse, je ne comprend pas.

2 J'aime

moi j’utilse mkvirtualenv wrapper, parce qu’un workon mon_env, est beaucoup plus rapide que de taper le chemin activate ./kjdhje/jezfh
et que je peux choisir à l’install la version de python avec -p
ces élements, en survolant la doc python je ne les aient pas vu
c’est vrai que si c’est possible dans la doc standard je suis preneur

Non en effet, c’est pas possible avec la stdlib, j’ai finit par me faire un alias (qui n’est pas une solution, j’entend bien que la planète ne va pas copier mon alias).

Ça me permet aussi de choisir ma version de Python. Ce que je trouve pas logique dans l’approche mkvirtualenv wrapper" c’est de devoir installer un paquet pour pouvoir créer un venv pour pouvoir installer un paquet, ça se mord la queue pour moi, surtou que j’utilise PIP_REQUIRE_VIRTUALENV=1.

1 J'aime

et on peut faire une demande aux dev de python?
c’est vrai que cela serait mieux de pas avoir à installer des libs externe pour ça

ça sert à ce que pip install dans l’env?

La question c’est : quelle demande ? Que l’installeur Python installe un exécutable venv ?

Mais comment fonctionnerait-il ? Y’a deux écoles :

  • Soit il fork $SHELL, et tu “sors” du venv en sortant du sous-shell.
  • Soit il modifie les variables d’environnement de ton shell actuel (en ce cas tu ne peux l’invoquer qu’en préfixant de “point espace” (sur bash), sinon il modifira son environnement pas celui du shell actuel).

Dans les deux cas ça ouvre une ribambelles de questions, parce qu’il faut que ça fonctionne sur bash, fish, zsh, cmd.exe, powershell, ceux que je connaît, et ceux que je ne connaît pas, il faut que ça fonctionne sur Linux, Windows, Mac, et d’autres, …

Donc oui, tu peux proposer une solution aux devs de Python, si ta solution est robuste, propre, cross-platform, cross-shell…

En refusant les installs hors env, ça évite les erreurs, enfin ce que moi je consière une erreur, c’est très personnel je pense :

$ pip install requests
ERROR: Could not find an activated virtualenv (required).

merci de toutes tes réponses.

C’est une erreur de ma part, je pensais que virtualenv était le mot générique et qu’il incluait venv et les systèmes similaires :no_mouth:

je l’ai pris et ai répondu dans ce sens :slight_smile:

Je ne pense pas que c’était une erreur, venv me semble bien synonyme à virtualenv aussi, mais je voulais préciser mon utilisation (et glaner des retours d’utilisateur de virtualenv · PyPI s’il en existe encore, savoir pourquoi ils n’ont pas migré).

Ils comptent conserver les deux ou virtualenv deviendra un symlink de venv à terme ?

Si non, je suis aussi curieux comprendre ce qui motive les développeurs à conserver virtualenv.

Il nous manque des étudiants ! :woman_student: :man_student: