Pour moi, la solution était d'aller à
Run > Edit Configuration > Defaults > Python
puis gérer le
- "Ajouter des racines de contenu à PYTHONPATH" et
- "Ajouter la racine source à PYTHONPATH"
ainsi que le champ "Répertoire de travail".
Si vous avez mis en place vos propres configurations d'exécution/débogage, vous pouvez vous rendre à l'adresse suivante
Run > Edit Configuration > Python > [Whatever you called your config]
et l'éditer là.
Mon problème était que je voulais que tout mon dépôt soit inclus dans mon projet PyCharm 2016.2, mais seul un sous-dossier était la racine du code source python réel. Je l'ai ajouté comme "Source Root" en faisant un clic droit sur le dossier puis
Mark directory as > Source Root
Puis j'ai décoché "Add content roots to PYTHONPATH" et coché "Add source Root to PYTHONPATH" dans le menu de configuration Run/Debug. J'ai ensuite vérifié le cheminement des dossiers en faisant :
import sys
logger.info(sys.path)
C'est sorti :
[
'/usr/local/my_project_root/my_sources_root',
'/usr/local/my_project_root/my_sources_root',
'/usr/lib/python3.4', '/usr/lib/python3.4/plat-x86_64-linux-gnu',
'/usr/lib/python3.4/lib-dynload',
'/usr/local/lib/python3.4/dist-packages',
'/usr/lib/python3/dist-packages'
]
Cependant, sans le correctif, il a dit :
[
'/usr/local/my_project_root/my_sources_root',
'/usr/local/my_project_root', <-- NOT WANTED
'/usr/lib/python3.4',
'/usr/lib/python3.4/plat-x86_64-linux-gnu',
'/usr/lib/python3.4/lib-dynload',
'/usr/local/lib/python3.4/dist-packages',
'/usr/lib/python3/dist-packages'
]
Ce qui signifie que le dossier racine du projet est inclus. Cela a mis le bazar dans le cheminement pour moi.