Comment configurer votre pythonpath dans un virtualenv déjà créé?

quel fichier dois-je éditer, et comment? J'ai créé un environnement virtuel.

73
demandé sur erjiang 2011-01-21 12:24:23

6 réponses

Si vous voulez changer le PYTHONPATH , employé dans un virtualenv, vous pouvez ajouter la ligne suivante à votre virtualenv bin/activate fichier:

export PYTHONPATH="/the/path/you/want"

de cette façon, le nouveau PYTHONPATH sera défini chaque fois que vous utilisez ce virtualenv.

EDIT: (pour répondre à @RamRachum commentaire)

pour le faire restaurer à sa valeur originale sur deactivate , vous pouvez ajouter

export OLD_PYTHONPATH="$PYTHONPATH"

avant la ligne susmentionnée, et ajouter la ligne suivante à votre script bin/postdeactivate .

export PYTHONPATH="$OLD_PYTHONPATH"
100
répondu mdeous 2012-01-28 23:11:42

le commentaire de @s29 devrait être une réponse:

Une façon d'ajouter un répertoire à l'environnement virtuel est d'installer virtualenvwrapper (ce qui est utile pour beaucoup de choses) et puis faites

mkvirtualenv myenv
workon myenv
add2virtualenv . #for current directory
add2virtualenv ~/my/path

si vous voulez supprimer ces chemins, éditez le fichier myenvhomedir/lib/python2.7/site-packages/_virtualenv_path_extensions.pth

la Documentation sur virtualenvwrapper peut être trouvée à http://virtualenvwrapper.readthedocs.org/en/latest/

une documentation spécifique sur cette fonctionnalité est disponible à l'adresse suivante: http://virtualenvwrapper.readthedocs.org/en/latest/command_ref.html?highlight=add2virtualenv

55
répondu tjb 2016-04-06 03:51:21

vous pouvez créer un fichier .pth qui contient le répertoire à rechercher, et le placer dans le répertoire site-packages . Par exemple:

cd $(python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")
echo /some/library/path > some-library.pth

l'effet est le même que l'ajout de /some/library/path à sys.path , et reste local à la configuration virtualenv .

3
répondu Arjen P. De Vries 2018-09-06 22:06:06

j'ai modifié mon script d'activation pour source le fichier .virtualenvrc , s'il existe dans le répertoire courant, et pour enregistrer/restaurer PYTHONPATH sur Activer/désactiver.

vous pouvez trouver le patch activate script ici. . Il remplace le script activate créé par virtualenv 1.11.6.

puis j'ai ajouté quelque chose comme ça à mon .virtualenvrc :

export PYTHONPATH="${PYTHONPATH:+$PYTHONPATH:}/some/library/path"
1
répondu André Laszlo 2014-11-11 19:55:53

après avoir initialisé votre vertualenv(1. cd venv et 2. Source bin / activate).

il suffit de définir ou de modifier votre chemin python en entrant la commande suivante -

export PYTHONPATH=' / home/django/srmvenv/lib / python3.4'

pour vérifier le chemin python entrer 1)

type  python then 
>> import sys
>> sys.path

Merci...

1
répondu SrmHitter9062 2016-01-12 19:10:29

il est déjà répondu ici - > mon environnement virtuel (python) provoque-t-il la casse de mon PYTHONPATH?

UNIX / LINUX

ajouter " exporter PYTHONPATH= / usr/local/lib / python2.0 " this to ~/.bashrc source et fichier en tapant "source ~/.bashrc "OR". ~ / .bashrc".

WINDOWS XP

1) Aller au panneau de configuration 2) Système de double clic 3) Aller à L'onglet Avancé 4) Cliquez sur Variables D'Environnement

dans la fenêtre des Variables système, vérifiez si vous avez une variable nommée PYTHONPATH. Si vous en avez déjà un, vérifiez qu'il pointe vers les bons répertoires. Si vous n'en avez pas encore, cliquez sur le bouton Nouveau et de créer.

CODE PYTHON

alternativement, vous pouvez aussi faire ci-dessous votre code: -

import sys
sys.path.append("/home/me/mypy") 
-16
répondu Ravikiran 2017-05-23 12:02:17