Pourquoi ne PyCharm toujours ajouter “contenu de la racine” à mon PYTHONPATH, et ce PYTHONPATH?

Je suis confus sur la façon PyCharm détermine le chemin d'accès Python utilise pour localiser les modules et packages.

Tout d'abord, quand j'ai décocher les paramètres (dans la "Console Python" et ma Configuration d'essai), je persiste à voir dans le répertoire de mon projet au début de sys.path.

Par exemple, j'ai un projet dans le chemin de problème " et "Exécuter" un fichier contenant

import sys
for p in sys.path:
    print p

- Je obtenir

/Users/Rax/Documents/Projects/pathproblem
... (other things in my PYTHONPATH)
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages
/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload
/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/PyObjC
/Library/Python/2.7/site-packages

même quand j'ai demandé pour le "contenu de la racine" être exclus de la voie:

Pourquoi ne PyCharm toujours ajouter “contenu de la racine” à mon PYTHONPATH, et ce PYTHONPATH?

Cela peut entraîner dans la réussite de l'importation de modules qui ne sont pas importés dans les déploiements classiques (par exemple, lors de la construction d'un package).

Si je vérifie le paramètre-je obtenir deux fois:

/Users/Rax/Documents/Projects/pathproblem
... (other things in my PYTHONPATH)
/Users/Rax/Documents/Projects/pathproblem
...

Il semble que PyCharm toujours ajoute le projet actuel de la racine au début de (ce qu'il considère être) le PYTHONPATH et que ce paramètre ajoute juste qu'il nouveau à la fin.

(1) Comment puis-je configurer PyCharm, de sorte qu'il (vraiment) ne pas ajouter le répertoire de projet à la recherche de colis chemin?

Aussi, aussi loin que je peux dire, PYTHONPATH, pour PyCharm, n'est pas mon système PYTHONPATH à tous, mais l'utilisateur "ajouté" les entrées dans — en fait, prêter à confusion, à la fin de l'paramètres de Chemin de l'Interpréteur Python.

(2) d'Où vient PyCharm de PYTHONPATH venir? Ce n'est pas le PYTHONPATH je vois partout ailleurs sur mon système.


FWIW, PyCharm du Sphinx respecte "le contenu de la racine" paramètres", d'ajouter le contenu de la racine seulement lorsque le chemin lorsque cette case est cochée dans la configuration de build.

OriginalL'auteur orome | 2014-01-18