Ajouter à python chemin de mac os x

j'ai pensé

import sys
sys.path.append("/home/me/mydir")

ajoute un dir pour mon pythonpath

si j'imprime sys.chemin de ma dir est là.

puis j'ouvre une nouvelle commande et elle n'est plus là.

mais D'une façon ou d'une autre Python ne peut pas importer les modules que j'ai enregistrés dans ce dir.

Ce que je fais mal?

j'ai lu .de profil ou de .bash_profile fera l'affaire.

Dois-je ajouter:

PATH="/Me//Documents/mydir:$PYTHONPATH"
export PATH

Pour le faire fonctionner?

45
demandé sur Matthew Flaschen 2010-08-02 16:23:58

4 réponses

Modification sys.path ne s'applique qu'à la vie de L'interpréteur Python. Si vous voulez le faire de façon permanente, vous devez modifier le

PYTHONPATH="/Me/Documents/mydir:$PYTHONPATH"
export PYTHONPATH

Notez que PATH est le chemin du système pour les exécutables, qui est complètement séparé.

**Vous pouvez écrire ci-dessus dans ~/.bash_profile et la source à l'aide de source ~/.bash_profile

60
répondu Matthew Flaschen 2016-08-04 04:42:24

Je ne sais pas pourquoi la solution de Matthew n'a pas fonctionné pour moi (pourrait être que J'utilise OSX10.8 ou peut-être quelque chose à voir avec macports). Mais j'ai ajouté les lignes suivantes à la fin du fichier ~/.profile

export PYTHONPATH=/path/to/dir:$PYTHONPATH

mon répertoire est maintenant sur le pythonpath -

my-macbook:~ aidan$ python
Python 2.7.2 (default, Jun 20 2012, 16:23:33) 
[GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['', '/path/to/dir', ...  

et je peux importer des modules à partir de ce répertoire.

6
répondu Aidan Ewen 2012-11-13 10:44:32

définir la variable d'environnement $PYTHONPATH ne semble pas affecter les terminaux iPython de L'IDE de Spyder sur un Mac. Cependant, le menu application de Spyder contient un " PYTHONPATH manager."Ajouter mon chemin ici a résolu mon problème. Le "PYTHONPATH manager" est également persistant dans les redémarrages d'applications.

ceci est spécifique à un Mac, car configurer la variable d'environnement PYTHONPATH sur mon PC Windows donne le comportement attendu (les modules sont trouvés) sans utiliser PYTHONPATH manager à Spyder.

2
répondu Andros 2016-06-10 13:22:56

la réponse de Mathew fonctionne pour le terminal Python shell, mais elle ne fonctionnait pas pour IDLE shell dans mon cas parce que de nombreuses versions de python existaient avant que je les remplace toutes par Python2.7.7. Comment j'ai résolu le problème avec IDLE.

  1. Dans le terminal, cd /Applications/Python\ 2.7/IDLE.app/Contents/Resources/
  2. sudo nano idlemain.py, entrez le mot de passe si nécessaire.
  3. après os.chdir(os.path.expanduser('~/Documents')) cette ligne, j'ai ajouté sys.path.append("/Users/admin/Downloads....")NOTE: remplacer le contenu des guillemets par le répertoire où le module python doit être ajouté
  4. pour enregistrer la modification, ctrl+x et entrez Maintenant, ouvrez ralenti et essayez d'importer le module python, pas d'erreur pour moi!!!
1
répondu Tennom 2014-06-26 08:53:30