У меня есть PyCharm 1.2.1 в Windows. Мне нужно редактировать разные ветки одного и того же проекта - несколько тяжелых ветвей, потому что они живут в разных папках на диске - скажем, что это c:\apps\alpha
и c:\apps\beta
. Для каждой такой папки переменная PYTHONPATH должна быть настроена так, чтобы указывать на соответствующие библиотеки поставщиков, которые живут где-то внутри корневой папки проекта (c:\alpha\vendor
,...). Мне удалось обойти эту проблему, начав PyCharm из командного файла cmd, который устанавливает необходимое значение переменной PYTHONPATH перед запуском PyCharm (поэтому у меня есть PyCharm.cmd
внутри alpha
и PyCharm.cmd
внутри beta
).
Проблема: когда я открываю PyCharm для редактирования папки beta
, оператор import
импортирует модули из alpha
папки! Когда я запускаю интерпретатор python.exe
из командной строки, все работает так, как ожидалось - проблема кажется только с PyCharm.
Второе странное исследование: выполнение кода print sys.path
из PyCharm и внешнего интерпретатора python.exe дает разные результаты - из PyCharm он не показывает мои модули PYTHONPATH. Я новичок в Python и PyCharm, но это поведение выглядит очень странным и непоследовательным.
Наконец, я нашел некоторые настройки в PyCharm IDE, которые выглядят так, как будто я должен разрешить эту проблему - File -> Settings -> Python Interpreter
. Там я нашел все пути для папок alpha
и beta
. Невозможно очистить этот список путей, только для отключения некоторых элементов. Но даже отключение работает несколько глупо - я должен отключить/повторно включить их отдельно для каждого раза, когда редактирую папки alpha
или beta
".
Итак, последний вопрос: как можно с PyCharm редактировать отдельные проекты (папки) и заставить PyCharm не импортировать модули из неправильных мест?