Para mi la solucion fue ir a
Run > Edit Configuration > Defaults > Python
luego gestiona el
- "Agregar raíces de contenido a PYTHONPATH" y
- "Agregar raíz de origen a PYTHONPATH"
casillas de verificación, así como la configuración del campo "Directorio de trabajo".
Si ha configurado sus propias configuraciones de ejecución / depuración, es posible que desee ir a
Run > Edit Configuration > Python > [Whatever you called your config]
y editarlo allí.
Mi problema era que quería tener todo mi repositorio incluido en mi proyecto PyCharm 2016.2, pero solo una subcarpeta era la raíz del código fuente real de Python. Lo agregué como "Source Root" haciendo clic derecho en la carpeta y luego
Mark directory as > Source Root
Luego, desmarque "Agregar raíces de contenido a PYTHONPATH" y marque "Agregar raíz de origen a PYTHONPATH" en el menú de configuración Ejecutar / Depurar. Luego verifiqué la ruta de la carpeta haciendo:
import sys
logger.info(sys.path)
Este resultado:
[
'/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'
]
Sin embargo, sin la corrección decía:
[
'/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'
]
Lo que significa que tengo la carpeta raíz del proyecto incluida. Esto estropeó la ruta para mí.