Для мене рішенням було піти на
Run > Edit Configuration > Defaults > Python
потім керувати
- "Додати корені вмісту до PYTHONPATH" та
- "Додати вихідний корінь до PYTHONPATH"
прапорці, а також встановлення поля "Робочий каталог".
Якщо ви налаштували власні конфігурації запуску / налагодження, можливо, вам доведеться перейти до
Run > Edit Configuration > Python > [Whatever you called your config]
і відредагуйте його там.
Моя проблема полягала в тому, що я хотів, щоб моє ціле сховище було включено до мого проекту PyCharm 2016.2, але фактичним коренем вихідного коду python була лише підпапка. Я додав його як "Source Root", клацнувши правою кнопкою миші папку
Mark directory as > Source Root
Потім зніміть прапорець біля пункту «Додати корені вмісту до PYTHONPATH» та встановіть прапорець «Додати кореневий код джерела до PYTHONPATH» у меню конфігурації Run / Debug. Потім я перевірив шлях до папки, виконавши:
import sys
logger.info(sys.path)
Це вийшло:
[
'/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'
]
Однак без виправлення в ньому сказано:
[
'/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'
]
Це означало, що я включив кореневу папку проекту. Це зіпсувало мені шлях.