Configuration de l'environnement Python

WBOY
Libérer: 2024-08-13 06:54:12
original
562 Les gens l'ont consulté

Python Environment Setup

Je suis un développeur Python et je travaille généralement avec plusieurs référentiels à tout moment. La plupart de ces projets ont des dépendances différentes, je crée donc un environnement virtuel dans chaque projet. Je préfère créer un environnement virtuel juste à côté du code. Pycharm le détecte également lorsque le référentiel est ouvert dans Pycharm.

Cette configuration a fonctionné la plupart du temps mais parfois, j'active venv d'un référentiel puis je le modifie dans un autre référentiel sans changer d'activation de l'environnement correct. J'ai généralement remarqué cela lorsque l'exécution de code échouait et je n'ai jamais perdu plus d'une minute à ce sujet, mais cela m'a toujours fait penser que se passerait-il s'il existait un shell qui pourrait exécuter quelque chose lorsque vous entrez dans un répertoire ?

J'ai décidé d'implémenter temporairement quelque chose de simple dans un script shell. J'ai fini par créer une petite fonction, aliasée avec cd et ajoutée dans mon .bashrc.

C'est une fonction simple et tout ce dont j'ai toujours eu besoin. C'est le cas,

  1. Charge le .venv à partir de ce référentiel
  2. De plus, sources .cdenv, je définis généralement une variable env mais vous pouvez tout faire là-dedans.

J'étais d'accord pour ne pas désactiver/réinitialiser l'environnement lorsque je quittais le répertoire.

Ajoutez la fonction ci-dessous dans .bashrc et vous devriez pouvoir l'utiliser.

Remarque : si vous créez votre environnement virtuel avec un nom différent, veuillez modifier le nom dans le code ci-dessous.

function cd() {
  # Run a shell `cd` command or error
  command cd "$@" || return

  # If .venv exists in the directory
  if [[ -d .venv ]]; then
    # Deactivate any initialized virtual env, ignore error
    deactivate > /dev/null 2>&1

    # activate .venv
    source .venv/bin/activate
    echo "deactivate prev venv and activate current venv"
  fi

  # Load a .cdenv file
  if [[ -f .cdenv ]]; then
      echo "loading .cdenv"
      source ./.cdenv
  fi
}
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal